プロが教えるわが家の防犯対策術!

VB2010とmdb(Ms-Access)にてシステムを構築しています。

Select文にて取得したレコードをDatagridviewにて表示しようとしているのですが
SQL="SELECT * FROM table ORDER BY ID"
当のシンプルなものだと表示できるのですが

特定の文字列順にソートしたくCASE WHENを使用して
SQL = "SELECT * FROM table ORDER BY CASE BUPPIN WHEN '○○' THEN 1 WHEN '△△' THEN 2 ELSE 0 END"

のようにSQLを書いてみたのですがデータアタプタにてデータテーブルに結果を入力させる際にエラーが出てしまいます。

構文間違いでしょうか?
ご教授お願いします

A 回答 (1件)

Jet SQLって、case式をサポートしてないような。


ソート用辞書テーブルを作ってjoinするとか。

参考URL:http://www.accessclub.jp/bbs2/0076/beginter24063 …
    • good
    • 0
この回答へのお礼

ありがとうございます。
SWICHを使用したらうまく動作しました。
mdbはCase使えないんですね、私が持っている書籍ではAccessで『Case When』が使えますって書いてあったのでずーっと考え込んでいました。

お礼日時:2011/12/10 12:28

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