SQL Erpress中日期查询的问题

微醺_zZ 2009-06-03 12:46:32
select * from SoccerEvent where 1=1
and (SELECT CONVERT(CHAR(10),matchDate,120)) = '2009-6-2'

SELECT CONVERT(CHAR(10),matchDate,120)显示的日期格式是“2009-06-02”
表中的日期格式是DateTime类型的标准格式(2009-06-03 11:00:00),如何使这个where条件的等式成立
等号右边的是传进来的值,请教各位高手,如何解决这个问题。


用string.Format把右边的转了也行,请教各位高手如何解决这个问题
...全文
69 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
微醺_zZ 2009-06-08
  • 打赏
  • 举报
回复
感谢楼上的各位的回答,今天比较忙,待明天我整理一下实际运用下就结贴给分了,不胜感激
yingzhilian2008 2009-06-05
  • 打赏
  • 举报
回复
楼主可以这样 在语句改成和数据库一致的格式带时分秒的

SELECT CONVERT(DateTime,matchDate,120)

JonasFeng 2009-06-05
  • 打赏
  • 举报
回复
稍微修改下,楼主可以这样

select * from SoccerEvent where 1=1 
and datediff(dd,matchDate,'2009-6-3')=0
and datepart(hh,matchDate) = 2
jia_guijun 2009-06-03
  • 打赏
  • 举报
回复
晕,参数写错了。
[Quote=引用 3 楼 jia_guijun 的回复:]
SQL codeselect*fromSoccerEventwhere1=1anddatediff(mm,matchDate,'2009-6-2')=0
[/Quote]



select * from SoccerEvent where 1=1 and datediff(dd,matchDate,'2009-6-2')=0
jia_guijun 2009-06-03
  • 打赏
  • 举报
回复
select * from SoccerEvent where 1=1
and datediff(mm,matchDate,'2009-6-2')=0
微醺_zZ 2009-06-03
  • 打赏
  • 举报
回复
判断长度补0这个我倒会,我就是想知道有没有什么SQL语句能解决这个问题?比如detediff
学习中,谢谢各位
微醺_zZ 2009-06-03
  • 打赏
  • 举报
回复
谢谢jia_guijun,这个问题解决了,还有另一个问题
select * from SoccerEvent where 1=1 and datediff(dd,matchDate,'2009-6-3')=0 and (SELECT CONVERT(CHAR (5),matchDate, 108)) = '2:00'
同样的问题,也是少个前导0...
我彻底败了...

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧