前提・実現したいこと
SQL(SQL Server)でパラメータに指定した値がnullであれば
対応する値がnullのレコードのみを取得し、
値があれば、その値とNULLのレコードを取得したいです。
対象テーブル
顧客商品テーブル
顧客ID(PK) | 商品ID(PK) | 価格 |
---|---|---|
1 | 商品A | 1,000 |
2 | 商品A | 1,200 |
3 | 商品B | 1,300 |
4 | null | 1,500 |
①パラメータに商品ID(商品A)を渡した場合
顧客ID(PK) | 商品ID(PK) | 価格 |
---|---|---|
1 | 商品A | 1,000 |
2 | 商品A | 1,200 |
4 | null | 1,500 |
②パラメータに商品ID(null)を渡した場合
顧客ID(PK) | 商品ID(PK) | 価格 |
---|---|---|
4 | null | 1,500 |
試したこと
IS NULLを利用してWHERE条件を書きたいのですが、NULLまたはNULLと指定した値という条件が書けません。
(知識不足で申し訳ありません。)
SQL
1WHERE 顧客商品テーブル.顧客ID IS NULL 2OR ${ 顧客商品テーブル.顧客ID = パラメータ.商品ID}
※ISNULL関数は使う想定はございません。