アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になっております。

SQLでの質問です。

--テーブル----------
F_1F_2
AAABBB
AAACCC
BBBXXX
CCCDDD
DDDYYY

1.F_1のAAAを条件にF_2のBBB・CCCを取得し、
F_1のBBB・CCCと、F_2のXXXとDDDを取得します。

2.次に、取得したF_2のXXX・DDDを条件に、F_1のDDD、F_2のYYYを取得します。

これを1つのSQLで実行したいのですが、副問合せを駆使しても、良いSQLが思い浮かびません。

有識者の方、ご享受頂きたいです。

宜しくお願い致します。

A 回答 (1件)

いまいちルールがわかんないんだけど、



> 2.次に、取得したF_2のXXX・DDDを条件に、F_1のDDD、F_2のYYYを取得します。
XXXはどう条件に絡めてるの??

末端が欲しいなら
select F_1, F_2 from (
select F_1, F_2, Level, connect_by_IsLeaf as isLeaf
from TBL
start with F_1 = 'AAA'
connect by F_1 = prior F_2
) where isLeaf=1

一番深いとこが知りたいなら
select F_1, F_2 from (
select F_1, F_2, Level
from TBL
start with F_1 = 'AAA'
connect by F_1 = prior F_2
order by Level desc
) where rownum=1
かな?

この回答への補足

ご返信ありがとうございます。
私の情報が足らず申し訳ないです。

まずDBはOracleなのですが、ODBC接続でAccessクエリとなっておりました。
投稿が削除できないので、Accessで再質問させて頂きます。

大変申し訳なかったです。
ありがとうございました。

補足日時:2011/06/22 13:05
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!