【发布时间】:2017-02-21 20:27:19
【问题描述】:
我有一个三列的表,第一列没有空值,但另外两列有空值查询没有给我我想要的结果,它保持忽略具有空值的字段:
SELECT
ISNULL(IQCRM_NUM, 0) AS ASIQCRM_NUM,
ISNULL(Full_name, 0) AS ASFull_name,
ISNULL(Mother_Name, 0) AS Mother_Name,
ISNULL(Date_of_Birth, 0) AS Date_of_Birth,
ISNULL(Province_of_birth, 0) AS Province_of_birth,
ISNULL(Job, 0) AS Job
FROM [Criminal Main Table]
WHERE
(Full_name LIKE N'%' + @Full_name + N'%' OR @Full_name IS NULL) AND (Mother_Name LIKE N'%' + @Mother_Name + N'%' OR @Mother_Name IS NULL) AND (Date_of_Birth LIKE N'%' + @Date_of_Birth + N'%' OR @Date_of_Birth IS NULL)
如果任何条件都符合,我希望查询从表中获取数据 像这样的空值
如果我输入 full_name like (ali) 我想获取类似的数据
full_name |Mother_Name |Date_of_Birth
ali | huda |NULL
ali |NULL |1990
ali |NULL |NULL
ali |Noor |1988
【问题讨论】:
-
-
你真正想要什么输出?当前的
WHERE子句对我来说似乎毫无意义。 -
我希望在一个或两个或全部参数中输入文本来过滤数据并得到我想要的结果
-
变量
@Full_Name是参数之一吗? -
@TimBiegeleisen 我想根据传递的参数过滤数据,直到列有空值我希望能够根据其他条件获取数据
标签: sql asp.net sql-server