![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
<環境>sqlserver
SQLでパラメータが空白であれば全件取得、パラメータに値が設定されている場合には
条件にHITするデータを抽出したいのですが、一本のクエリで抽出することができるのでしょうか?
空白時パラメータは以下のとおり入ってきます。
@no=""…完全一致
@name="%%"…部分一致
例)
SELECT *
FROM テーブル
WHERE
(NO = @no)
and ((@name IS NULL) OR (@name IS NOT NULL) AND (NAME LIKE @name))
NAMEは上記クエリにて取得できています。
NOのところはどのようにすればよいでしょうか?
No.3
- 回答日時:
Case文を使うととりあえず対応は可能かと…。
No=Case @no is null then No else @no end
この回答への補足
SELECT *
FROM テーブル
WHERE
([NO] = CASE @no IS NULL THEN [NO] ELSE @no END)
AND
((@name IS NULL) OR (@name IS NOT NULL) AND ([NAME] LIKE @name))
でエラーとなります。何度もすみませんが添削お願いします。
No.2
- 回答日時:
>完全一致は仕様のため変更できないのです
とありますが、たとえばNOが5ケタ固定長の場合
WHERE NO LIKE '12345%'
と
WHERE NO = '12345'
は変わらない結果が得られると思いますが。
>テーブルを作成
他には空白時とそうでない場合でsqlcommandを
PGで切り替えるとかでしょうか。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- その他(プログラミング・Web制作) Pythonで会員サイトの自動ログイン ID Nameがない 1 2022/12/16 02:09
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- 英語 この英語の問題が分かりません 3 2023/04/22 20:19
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「名前(first name) 1 2023/06/24 13:03
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ビュー情報(user_views)の参...
-
検索対象のデータが「複数レコ...
-
SQL 任意 指定 並び替え
-
一つのSQLにできませんか??
-
コンパイルエラーが出ます。助...
-
sql文のwhere句について
-
大文字/小文字の区別しないで検...
-
OR と IN の違い
-
SQL 2000 にあった一覧のエクス...
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
外部参照してるキーを主キーに...
-
SQLで特定の項目の重複のみを排...
-
INSERT文でフィールドの1つだ...
-
1、Rstudioで回帰直線を求める...
-
重複していないレコードの抽出...
-
副問合せの書き方について
-
access2003 クエリSQL文に...
-
datetime型でNULL値を入れたい。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
OR と IN の違い
-
大文字/小文字の区別しないで検...
-
最新から100行のSELECT文
-
ビュー情報(user_views)の参...
-
検索対象のデータが「複数レコ...
-
Oracleのエラースタックトレー...
-
sql文のwhere句について
-
階層問い合わせで重複レコード...
-
sqlのテーブル名省略について
-
Accessから呼び出した値を比較...
-
PL/SQL デバック方法:入力を受...
-
コンパイルエラーが出ます。助...
-
SQLの書き方について教えてくだ...
-
重複レコードのある項目を比較...
-
複数パターンの集計結果を一度...
-
PHP SQL 問合せについて
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
外部参照してるキーを主キーに...
おすすめ情報