- ベストアンサー
2回実行のSQL文を1回にしたい
テーブルXXXがありますその中の各フィールドは以下の通りです。 フィールド A フィールド B フィールド C まずA=0の検索をしてBの値を取り出し、新たにB=取り出した値で 検索をしたいのですがSQL文が1つにできないでしょうか? 今現在、 SELECT * FROM XXX WHERE A=0 を実行してBの値を変数Dに入れ SELECT * FROM XXX WHERE B=D と実行して全てのCの値を取り出しています よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
SELECT * FROM XXX WHERE B=( SELECT B FROM XXX WHERE A=0 ); No.1の回答とどちらが速いかは不明です.
その他の回答 (2)
- ssm3u
- ベストアンサー率52% (19/36)
SELECT * FROM XXX WHERE A=0 AND B=D ; ではダメということですか???
- octopus
- ベストアンサー率19% (6/31)
多分、副問い合わせの方法でやれば可能だと思います。 こんな感じでしょうか・・・。 -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SELECT * FROM (SELECT * FROM XXX WHERE A=0 )TMP_A <=== 自分で指定します。 WHERE B=D -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* FROM句(データを引くテーブル)にSELECT文で絞り込んだものを作成し、そこから引いてくる形になっています。 上手く伝わるといいのですが・・・ という前に、上手く動くといいのですが(汗)
お礼
すばやい回答ありがとうございます。 早速ためしてみます。
お礼
ありがとうございます。 一発でOKでした。 解りにくい質問でも理解していただき助かりました。