質問編集履歴
4
定義の追記
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
|
-
|
15
|
+
|
12
|
-
また、table1のnameはnvarchar2型、table2,3のnoはvarchar2型です。
|
13
|
-
noには前ゼロ8桁で半角数値が入ります。
|
14
16
|
原因を教えていただけますでしょうか。
|
15
17
|
よろしくお願いします。
|
16
18
|
|
3
テーブル定義を追記
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
ソース修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
具体的には、下記の条件で出力します。
|
4
4
|
table2、table3ともに存在する場合:table2のデータ
|
5
5
|
table2にのみ存在する場合:table2のデータ
|
6
|
-
table3にのみ存在する場合:table
|
6
|
+
table3にのみ存在する場合:table3のデータ
|
7
7
|
|
8
8
|
### 発生している問題・分からないこと
|
9
9
|
SQLを作成したのですが、ORDER BY句でORA-01722が発生しているようです。
|
1
ソース修正
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
|
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
|
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.番号
|