映画のエンドロール観る派?観ない派?

サブクエリで抽出したカラムを
本クエリでの結果と一緒に表示したいのですが
どのように実現してよいかわからず困っております。

詳細としては、下記のようなことをしたいと考えております。
文中の1)と2)は文章下部にあるSQLを指しております
-----------------------------------------------------------
最初は、1)のように凄く単純なSQLでよかったのですが
仕様が変わり、TBL2で取得した新しいカラムも一緒に
本クエリでの結果として取得できれば、SQLを2回実行せずに済むなと考えたのですが、
2)のように色々と試行錯誤したのですが、実現できません。
(2)は単なる空想ですが…)

そこで、わかる方にお伺いしたいのですが、
副問い合わせで取得した複数カラムの中の1つのカラム【2)でいうところのTBL2.X】

2)のように"select TBL1.A , TBL2.X"として、結果を得ることは可能でしょうか。

ただし、
TBL1のカラムAは、TBL2に存在しない
TBL2のカラムXは、TBL1には存在しない
カラムBは、TBL1、TBL2に存在する
の条件となっております

環境はMysqlです

テーブル結合の方法も考えたのですが、
TBL2で、日付でソートし、その上位100件だけを
持ってきたいと思ったので、副問い合わせで一気に抽出しようとこの方法を考えまし


お分かりになる方がいらっしゃいましたらよろしくお願いします



1)SQL
------------
select TBL1.A
from TBL1
where TBL1.B in (
select TBL2.B
from TBL2
where 条件
)



2)想像SQL(こんな感じの事をしたい)
--------------
select TBL1.A , TBL2.X
from TBL1
where TBL1.B in (
select TBL2.B , TBL2.X
from TBL2
where 条件
order by TBL2.日付 desc
limit 100
)

A 回答 (1件)

select TBL1.A , TBL2.X


from TBL1, TBL2
where TBL1.B = TBL2.B
order by TBL2.日付 desc
limit 100

これじゃダメなんですか?
TBL2.日付でソートしているわけだから、ソート後の
100件を取ると思うけど。
    • good
    • 0
この回答へのお礼

ありがとうございました。
教えていただいたSQLを実行したら思い通りの結果が得られました
(20件でのテストですが…)

お騒がせしました

お礼日時:2012/04/19 00:05

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

関連するカテゴリからQ&Aを探す