sql server怎么解决多条件组合查询啊
顺便帮我解释一下select*fromtablewhere(addDate=@addDateor@addDateisnull)and(name=@nameor@name=...
顺便帮我解释一下
select * from table where (addDate = @addDate or @addDate is null) and (name =
@name or @name = '')
感激不尽啊 展开
select * from table where (addDate = @addDate or @addDate is null) and (name =
@name or @name = '')
感激不尽啊 展开
4个回答
展开全部
你是不会写逻辑表达式吗?简单点说,只要掌握各种运算符号和运算优先级就可以写出复杂的逻辑和查询。具体写查询还要多练,多看,多分析,才能写出复杂的查询。
SQL SERVER 运算符优先级:
()*/%+- NOT AND OR
SQL SERVER 运算符优先级:
()*/%+- NOT AND OR
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select *
from table
where 1=1
and (1=2
or @addDate is null -- 未提供参数 @addDate
or addDate = @addDate -- 或 addDate等于提供的参数@addDate
)
and (1=2
or @name = '' -- 未提供参数@name
or name = @name -- 或 name等于提供的参数@name
)
from table
where 1=1
and (1=2
or @addDate is null -- 未提供参数 @addDate
or addDate = @addDate -- 或 addDate等于提供的参数@addDate
)
and (1=2
or @name = '' -- 未提供参数@name
or name = @name -- 或 name等于提供的参数@name
)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查询表中满足条件时间等于@addDate或者是时间为空和姓名等于@name或者姓名等于空字符串的信息
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from table where (addDate = @addDate or addDate=‘’) and (name = name or name = '')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询