質問編集履歴

4

定義の追記

2024/11/13 05:30

投稿

yamapi1012bs
yamapi1012bs

スコア11

test CHANGED
File without changes
test CHANGED
@@ -5,12 +5,14 @@
5
5
  table2にのみ存在する場合:table2のデータ
6
6
  table3にのみ存在する場合:table3のデータ
7
7
 
8
+ table1のnoはvarchar2型です。
9
+ また、table1のnameはnvarchar2型、table2,3のnoはvarchar2型です。
10
+ noは、主キーで、前ゼロ8桁の半角数値が入ります。
11
+
8
12
  ### 発生している問題・分からないこと
9
13
  SQLを作成したのですが、ORDER BY句でORA-01722が発生しているようです。
10
14
  (ORDER BYの行を消したら実行できる)
11
- table1のnoはvarchar2型です。
15
+
12
- また、table1のnameはnvarchar2型、table2,3のnoはvarchar2型です。
13
- noには前ゼロ8桁で半角数値が入ります。
14
16
  原因を教えていただけますでしょうか。
15
17
  よろしくお願いします。
16
18
 

3

テーブル定義を追記

2024/11/13 05:28

投稿

yamapi1012bs
yamapi1012bs

スコア11

test CHANGED
File without changes
test CHANGED
@@ -9,6 +9,8 @@
9
9
  SQLを作成したのですが、ORDER BY句でORA-01722が発生しているようです。
10
10
  (ORDER BYの行を消したら実行できる)
11
11
  table1のnoはvarchar2型です。
12
+ また、table1のnameはnvarchar2型、table2,3のnoはvarchar2型です。
13
+ noには前ゼロ8桁で半角数値が入ります。
12
14
  原因を教えていただけますでしょうか。
13
15
  よろしくお願いします。
14
16
 

2

ソース修正

2024/11/13 05:17

投稿

yamapi1012bs
yamapi1012bs

スコア11

test CHANGED
File without changes
test CHANGED
@@ -3,7 +3,7 @@
3
3
  具体的には、下記の条件で出力します。
4
4
  table2、table3ともに存在する場合:table2のデータ
5
5
  table2にのみ存在する場合:table2のデータ
6
- table3にのみ存在する場合:table2のデータ
6
+ table3にのみ存在する場合:table3のデータ
7
7
 
8
8
  ### 発生している問題・分からないこと
9
9
  SQLを作成したのですが、ORDER BY句でORA-01722が発生しているようです。

1

ソース修正

2024/11/13 05:17

投稿

yamapi1012bs
yamapi1012bs

スコア11

test CHANGED
File without changes
test CHANGED
@@ -24,10 +24,10 @@
24
24
  FROM
25
25
  ( SELECT no AS 番号, name AS 氏名 FROM Table1 where flg=1) t1
26
26
  LEFT OUTER JOIN
27
- ( SELECT no, A FROM Table2 WHERE A IS NOT NULL) t2
27
+ ( SELECT no, A FROM Table2 WHERE no IS NOT NULL) t2
28
28
  ON t1.no=t2.no
29
29
  LEFT OUTER JOIN
30
- ( SELECT no, B FROM Table3 WHERE B IS NOT NULL) t3
30
+ ( SELECT no, B FROM Table3 WHERE no IS NOT NULL) t3
31
31
  ON t1.no=t3.no
32
32
  WHERE t2.A IS NOT NULL OR t2.B IS NOT NULL
33
33
  ORDER BY t1.番号