2012-04-11 12 views
0

この質問は前の質問Simulation of CONNECT BY PRIOR of ORACLE in SQL SERVERの拡張です。サブスクリプションのSQL ServerでのOracleの接続のシミュレーション

これから私はSQL ServerでCONNECT BYを実行する方法を知っています。 Oracleでは、サブクエリで簡単に接続を使用できます。

したがって、私はできるでしょうか。 select * from t1 where t1.id in(query by connectから選択)。

SQLサーバーでも可能ですか?どうやって? (だけでなく、その他のデータベース)SQL Serverで

答えて

1

あなたは、何かのようにrecursive common table式を使用する必要があります。

with some_tree as ( 
    select ... 
    union all 
    select ... 
) 
select * 
from t1 
where t1.id in (select some_id from some_tree); 

バージョン11.2以来、Oracleはまた、再帰共通テーブルexpresionsをサポートしていない(あなたが使用することができます両方のデータベースで同じ構文)