2016-10-08 8 views
0

検索ページのあるネットWebアプリケーション結果が表示されるすべてのテキストボックスに3文字のテキストボックスを入力した場合、私の質問が表示されない結果は、私が唯一の1つのテキストボックスまたは2またはテキストボックスと私のクエリのすべてのテキストを入力した場合どのように私はデータを検索できるようにすることができている1つのテキストボックスには、以下の表示されます。Nullを含むSQL Multi Conditionクエリ検索結果に入力された値がありません

SELECT Emp_NUM, Full_name, Mother_Name, Date_of_Birth, Province_of_birth, Job 
FROM [Emp Main Table] 
WHERE (Full_name LIKE '%' + @Full_name + '%' OR Full_name IS NULL) AND 
(Mother_Name LIKE '%' + @Mother_Name + '%' OR Mother_Name IS NULL) AND 
(Date_of_Birth LIKE '%' + @Date_of_Birth + '%' OR Date_of_Birth IS NULL) 

答えて

0

をおそらくそのように:

SELECT [Emp_NUM] 
,[Full_name] 
,[Mother_Name] 
,[Date_of_Birth] 
,[Province_of_birth] 
,[Job] 
FROM [Emp Main Table] 
WHERE ([Full_name] LIKE '%'[email protected]_name+'%' OR RTRIM(COALESCE(@Full_name,''))='') 
AND ([Mother_Name] LIKE '%'[email protected]_Name+'%' OR RTRIM(COALESCE(@Mother_Name,''))='') 
AND ([Date_of_Birth] LIKE '%'[email protected]_of_Birth+'%' OR RTRIM(COALESCE(@Date_of_Birth,''))='') 
+0

をチェックするはい、それは私がここでそのようにそれを置くことを忘れそうですか? –

+0

Full_name IS NULLの代わりに@Full_name IS NULLを確認しましたか?あなたは空のテキストボックスがNULLを返すかどうか調べなければなりません - それは必要ありません。 –

+0

Actullyいいえ私は今それを試してみるよ助けてくれてありがとう –

1

使用:

rtrim(coalesce(@Full_name, '')) = '' 

の代わりに:

@Full_name is null 

空または空白の値に対して

+0

なぜ@Anandを説明できますか –

+1

ユーザー入力が空白の場合(空白がNULLでないなどの理由でコードが除外される場合など) – Anand

+0

Anandが正しい場合は、上記のコードを更新しました。 –

関連する問題