• 締切済み

SELECT文が上手く書けません

会社からSQLのSELECT文を書けと言われて3日目です。PostgreSQL のシステムでWHERE以下が WHERE 売上年月 = ? AND 得意先コード = ? AND 売上種別 = ? としました。画面上では売上年月、得意先コード、売上種別で検索できるようになっているのですが、3種類全て入力しないとエラーになります。この内1種類の入力でも検索できるようにしたいのですが、どのように書けばいいでしょうか? ANDをORに変えたりしたのですが上手くいきません。 全体のSELECT文は external.売上= SELECT 売上番号、売上日、得意先コード、売上区分、金額、入力日 FROM 売上一覧表 WHERE 売上年月 = ? AND 得意先コード = ? AND 売上種別 = ? です。 よろしくお願いします。

みんなの回答

  • JAWS55
  • ベストアンサー率38% (176/452)
回答No.2

何を使って書こうとしていますか? 普通に考えれば画面上で未入力の項目をチェックして、入力された項目だけが検索対象になるようにSQL文を作成しますが?

kumahas
質問者

お礼

「普通に考えれば画面上で未入力の項目をチェックして、入力された項目だけが検索対象になるようにSQL文を作成しますが?」 そうなんです!まさにその通りなんですが、それをどう書けばいいのかが分かりません。 もう1つ甘えついでに言うと「何を使って書こうとしていますか?」 の何をが何かも分かりません。 やっぱり最初からきちんと勉強しないと駄目なんでしょうか?

  • t_nojiri
  • ベストアンサー率28% (595/2071)
回答No.1

ワイルドカードとか、like使えば入力しない条件は、全部含むとみなせるでしょう。

参考URL:
http://www.wakhok.ac.jp/biblion/1994/DB/subsection2.4.3.5.html