sql 查询日期并且要能够实现模糊查询

我用的是sqlserver2008的数据库,有个字段lw_publish_date是date类型的,现在我要在表单里输入年份、某年的某月份、某天,要求数据库列出所有符合条... 我用的是sqlserver2008的数据库,有个字段lw_publish_date是date类型的,现在我要在表单里输入年份、某年的某月份、某天,要求数据库列出所有符合条件的记录。请问查询语句怎么写?数据库里的记录格式是2000-01-01 展开
 我来答
sallyyuhua
推荐于2021-02-24 · 超过12用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:27.9万
展开全部
select * from T where datediff(d,lw_publish_date,convert(varchar(10),'2010-01-01',120))=0
把convert(varchar(10),'2010-01-01',120)时间转一下就成了不带时分秒的时间'2010-01-01',
datediff(Z,字段,P)=0 其中Z就是代表Y(年分),M(月份),D(日)中任意一个,P就是代表你要的那个日期 例如:'2010-01-01'
百度网友2e8d38f40
2010-04-11 · TA获得超过782个赞
知道小有建树答主
回答量:959
采纳率:0%
帮助的人:797万
展开全部
where datediff(d,lw_publish_date,'2000-01-01')=0
这个就是你要的 where条件 你试下吧. 有问题可以给我留言,也可以自己查下datediff这个函数.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
暴雁菱0e1
2010-04-11 · TA获得超过2004个赞
知道小有建树答主
回答量:1192
采纳率:0%
帮助的人:0
展开全部
楼上的正确
或者where year(lw_publish_date)=@year and month(lw_publish_date)=@month and day(lw_publish_date)=@day
@year,@month,@date为传入的参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浩然之言
2010-04-11 · TA获得超过355个赞
知道小有建树答主
回答量:209
采纳率:0%
帮助的人:138万
展开全部
select * from tb where convert(varchar,lw_publish_date,120) like '2000-01-01 '
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式