私は次のようなクエリを持っています
SELECT tran_number
FROM table_a WHERE customer_id IN
(SELECT customer_id
FROM table_b
WHERE customer_key = 89564
AND ( other_phn_area_code
|| other_phnum_pfx_num
|| other_phnum_sfx_num IN
(123456789)))
AND phn_area_code || phnum_pfx_num || phnum_sfx_num IN (123456789)
上記のコードは正常に動作しています。懸念は内部クエリにあります(以下の内部クエリのみをコピーしました)...
(SELECT customer_id
FROM table_b
WHERE customer_key = 89564
AND ( other_phn_area_code
|| other_phnum_pfx_num
|| other_phnum_sfx_num IN
(123456789)))
このクエリを実行すると、エラーが発生しcustomer_id: invalid identifier
ます。実際にtable_b
は、 という名前のフィールドはありませんcustomer_id
。もしそうなら、上記の内部クエリとして使用すると、問題なくどのように機能しますか。
これを理解するのを手伝ってください。
データベースの詳細は以下
Oracle 11G Enterprise edition 11.2.0.2.0
PL/SQL Release 11.2.0.2.0