Mysql 4.0xを利用してDBを構築していますが、サブクエリが使えないために特定のユーザーIDの抽出が困難です。
テーブルAのIDをテーブルBのUIDとマッチさせて抽出するためのSQLをアドバイスしてください。
サブクエリを使わずに特定のユーザーIDに対応するテーブルAのIDを抽出するSQLを教えてください。
サブクエリを使わずに実現したのですが。。。
現在、Mysql 4.0xを利用してDBを構築しています。
しかしながら、サブクエリが使えないため以下のようなクエリが実現できず困っております。
EX:
select mg.*,sumlg.*
from mg left join (select id,uid from lg where uid = '00001') as sumlg on mg.id = sumlg.id
where sumlg.id is null;
上記SQLは特定のユーザーIDの、テーブルBに存在しないテーブルAのIDをユーザー単位で切り分け抽出するSQL文です。
(テーブルBにはIDとUIDでユニークになるレコードが格納されています。)
上記を実現するためのSQLをどなたかアドバイスください。
どうぞよろしくお願いします。
素直に・・
select mg.*,lg.*
from mg left join lg on (mg.id = lg.id and lg.uid = '00001')
where lg.id is null;
としてはダメなんですか?
そもそも、わざわざサブクエリを外部結合している動機が
判らないのですが・・
お礼
ご回答、ありがとうございます。 おっしゃるとおり、サブクエリで行う必要はありませんでしたね。。。