Oracle で WITH 句を使用しようとしていますが、データが返されません。
これは私が実行しようとしているクエリです...
with test as
(select count(*)
from my_table)
select *
from test;
このコードを実行すると、my_table のレコード数が返されます
select count(*)
from my_table
私はOracle 10gを使用しているため、クエリは機能するはずです...
select * from v$version;
収量
Oracle Database 10g Enterprise Edition リリース 10.2.0.4.0 - 64bi
PL/SQL リリース 10.2.0.4.0 - プロダクション
CORE 10.2.0.4.0
Solaris 用プロダクション TNS: バージョン 10.2.0.4.0 - プロダクション
NLSRTL バージョン 10.2.0.4.0 - 製造
権限の問題か何かでしょうか?
*編集: *
私の質問は明確だと思います。WITH ステートメントを使用しても、WITH ステートメント内の "select count(*) from my_table" ステートメントが正しく機能しているにもかかわらず、レコードが返されません。 、したがって、この質問:)
編集2
では、SQL サーバー管理スタジオからリンク サーバーからクエリを実行しようとすると、エラー情報が返されます。
sg 7357、レベル 16、状態 2、行 1 「with test as (select count(*) from v$version) select * from test;」というオブジェクトを処理できません。リンク サーバー "MyServer" の OLE DB プロバイダ "MSDAORA" は、オブジェクトに列がないか、現在のユーザーがそのオブジェクトに対するアクセス許可を持っていないことを示しています。