2012-08-11

[SQL][DB2]項目名 BETWEEN A AND B


BETWEEN演算子を使ってアルファベットのAからZまでを取得するために以下のように書いた
SELECT * FROM テーブル名 項目名 BETWEEN 'A' AND '{'
「{」は「Z」の次に来る文字らしい。
これで取得できると思ったのだけれど、「A」が取得できていない。どうやら「A<データ<B」という風になるらしく、「A」より一つ小さい文字列を左辺に入れてやる必要があるのだけれど、それがわからない。面倒なので以下のようにした
SELECT * FROM テーブル名 項目名 BETWEEN 'A' AND '{' OR 項目名 = 'A'
これでAからZまでを取得できた。
SELECT * FROM テーブル名 項目名 BETWEEN 'A' AND 'Z' OR 項目名 = 'A' OR 項目名 = 'Z'
とした方が確実かも……
だけど、仕様書には「A<=データ<=B」だと書いてある。
数値だと「A<=データ<=B」で文字列だと含まれないのかなぁ?謎。

0 件のコメント:

コメントを投稿