SQLServerを使用しています
テーブル
ID String --------------- 1 NULL 2 hoge 3 fuga 4 NULL 5 NULL
上記のテーブルに対して
SQL
1Declare @str nvarchar(20) 2Declare @id int 3 4SET @str = null 5SET @id = null 6 7SELECT ID, String 8FROM テーブル 9WHERE (@id IS NULL OR ID = @id) 10AND (@str IS NULL OR String LIKE @str)
というSQLを実行すれば、テーブルのレコードは全て抽出されたのですが、
WHERE (@id IS NULL OR ID = @id)という部分はどのような挙動になっているのでしょうか?
@idにはnullが入っているので、
WHERE ( true OR ID = @id)ということになるのでしょうか?
検索条件がどうなっているのか知りたいです。。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/23 14:58