dポイントプレゼントキャンペーン実施中!

どなたか教えて下さい。
Access2002を使っています。
オプションボタンが9個ありオプション値は1~8の数字で商品分類コードが選べるようになっています。
問題は最後のオプション値「9」なのですが、
9を選んだときには総ての商品分類を選びたいのです。
これをCaseとSQLで、作ってみようともったのですが、

select optionCode
case 1
1
case 2
2


case 9
true
End select
そして、sqlに代入させたいのです。
mysql="select * from 商品 " _
& "where 商品分類コード = " optionCode

もんだいは、Case文で「true」と使えないことです。
like"*" もしくは -1 など色々して見ましたが
エラーになってしまいます。
SQLで総ての条件を出すのにはTRUE以外になにかあるのでしょうか?
Caseを使って組みたいのですが、その発想自体がおかしいのでしょうか?
今は、if文で、動かしています。
Caseで動かしたいのです。
どなたか、よろしくお願いします。
aki

A 回答 (1件)

すべての条件ということは、それを条件にしないことですね。



つまり
select * from 商品
とすれば、すべての商品ですね。

で、実際に どうすればいいかというと
たとえば a という文字列の変数を使って

a="where 商品分類コード ="
select optionCode
case 1
a=a & 1
case 2
a=a & 2


case 9
a=""
End select

mysql="select * from 商品 " & a

としてあげれば いいでしょう。
    • good
    • 0
この回答へのお礼

ここに質問させて頂くといつも目からウロコ状態です。
ありがとう、ございます。
こんなこと、参考書にはありません。
まだまだ初心者の域を出られない私が恥ずかしいです。
ありがとうございました。
aki

お礼日時:2002/12/24 04:51

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