Windowsあれこれ、サービス・SWあれこれ、会計・経理あれこれ、いまさら生活雑学、いまさら都市伝説などなど。
カレンダー
04 | 2025/05 | 06 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
カテゴリー
最新記事
(11/15)
(10/28)
(10/26)
(10/16)
(10/05)
最新トラックバック
プロフィール
HN:
erokazu
性別:
非公開
ブログ内検索
最古記事
(08/19)
(08/21)
(08/23)
(08/25)
(08/26)
注意しておきたいAccessからSQL Serverの微妙な文法の違い。
一番顕著な違いはNULL値や空文字抽出時のSQL文の文法(WHERE句)の違いだろう。
↓↓↓ということで。
一番顕著な違いはNULL値や空文字抽出時のSQL文の文法(WHERE句)の違いだろう。
↓↓↓ということで。
【ケース】
ある任意のテーブルから、任意の項目の値がNULLまたは空文字以外のレコードを抽出する。
<アクセスの場合>
SELECT * FROM テーブルA
WHERE (フィールドX IS NOT NULL) AND (フィールドX <> "");
<SQL Serverの場合>
SELECT * FROM テーブルA
WHERE (NOT (フィールドX = NULL)) AND (NOT (フィールドX = ''));
(補足)
注目して欲しいのは、以下2点。
・SQL Serverの場合は共にWEHRE句に「NOT」を使用
・空文字は「"」(ダブルコーテーション)ではなく「'」(シングルコーテーション)で指定
あとは、Bit値の場合は、「True/False」の替わりに「1/0」を指定するとか???
ある任意のテーブルから、任意の項目の値がNULLまたは空文字以外のレコードを抽出する。
<アクセスの場合>
SELECT * FROM テーブルA
WHERE (フィールドX IS NOT NULL) AND (フィールドX <> "");
<SQL Serverの場合>
SELECT * FROM テーブルA
WHERE (NOT (フィールドX = NULL)) AND (NOT (フィールドX = ''));
(補足)
注目して欲しいのは、以下2点。
・SQL Serverの場合は共にWEHRE句に「NOT」を使用
・空文字は「"」(ダブルコーテーション)ではなく「'」(シングルコーテーション)で指定
あとは、Bit値の場合は、「True/False」の替わりに「1/0」を指定するとか???
PR
この記事にコメントする