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 = '')
感激不尽啊
展开
 我来答
WHITE_WIN
2013-06-29 · TA获得超过6111个赞
知道大有可为答主
回答量:3759
采纳率:50%
帮助的人:1890万
展开全部
你是不会写逻辑表达式吗?简单点说,只要掌握各种运算符号和运算优先级就可以写出复杂的逻辑和查询。具体写查询还要多练,多看,多分析,才能写出复杂的查询。
SQL SERVER 运算符优先级:
()*/%+- NOT AND OR
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tim_spac
推荐于2018-05-11 · TA获得超过3628个赞
知道大有可为答主
回答量:1804
采纳率:100%
帮助的人:2004万
展开全部
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
)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lqiang890329
2013-06-29 · TA获得超过211个赞
知道小有建树答主
回答量:503
采纳率:0%
帮助的人:167万
展开全部
查询表中满足条件时间等于@addDate或者是时间为空和姓名等于@name或者姓名等于空字符串的信息
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一只加菲猫qd
2013-06-29 · TA获得超过147个赞
知道小有建树答主
回答量:228
采纳率:88%
帮助的人:104万
展开全部
select * from table where (addDate = @addDate or addDate=‘’) and (name = name or name = '')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式