- - PR -
MySQLでのSELECT文について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2009-02-24 15:07
お世話になります。
MySQL5.1において3つのテーブルを元にデータを抽出しようと思っています。 まず、 SELECT id FROM a WHERE NOT EXISTS(SELECT id FROM b WHERE a.id=b.id); でaには存在するが、bには存在しないidを求め、 上で抽出できたデータを更に SELECT id FROM c WHERE c.status='0'; として絞り込みたいのですが、この2つのSELECT文を一つに纏めるにはどういった節というか、操作の方法があるのでしょうか。 |
|
投稿日時: 2009-02-24 15:23
c のテーブルに status = '0' として存在する id でしょうか?存在しない id でしょうか?
どちらにしろ下記の通りでは出来ませんか? SELECT id FROM a WHERE NOT EXISTS(SELECT id FROM b WHERE a.id = b.id) AND EXISTS(SELECT id FROM c WHERE c.status = '0' AND a.id = c.id) SELECT id FROM a WHERE NOT EXISTS(SELECT id FROM b WHERE a.id = b.id) AND NOT EXISTS(SELECT id FROM c WHERE c.status = '0' AND a.id = c.id) [ メッセージ編集済み 編集者: King 編集日時 2009-02-24 15:24 ] |
|
投稿日時: 2009-02-24 16:00
早速の返答ありがとうございます。
status='0'として存在するidになります。 教えて頂いたSQLを実行してみましたが、 2行目最後のc.idでUnknow columnとなってしまいました。 別々に実行した場合は正常に結果が帰ってきますので、テーブル名等間違っていないと思うのですが。。。もう一度確認してみます。 |
1