首页 新闻 赞助 找找看

SQL里有datetime字段的数据怎么比较

0
悬赏园豆:5 [已关闭问题]
<table border="0"> <tbody> <tr> <td> <p>dt(字段名,类型为datetime)</p> <p>2008-5-11 20:05:02</p> </td> </tr> <tr> <td>2008-5-11 20:08:09</td> </tr> <tr> <td>2008-5-11 23:35:51</td> </tr> <tr> <td>2008-5-11 23:37:13</td> </tr> </tbody> </table> <p>我想查询2008-5-11这天的所有数据,该怎么写sql语句</p> <p>select * from table1 where ....</p>
赚钱第一的主页 赚钱第一 | 初学一级 | 园豆:4
提问于:2008-09-03 15:24
< >
分享
其他回答(8)
0
把后面的时间截取了。然后比较
天下鹰 | 园豆:205 (菜鸟二级) | 2008-09-03 15:29
0
datediff
第一控制.NET | 园豆:1245 (小虾三级) | 2008-09-03 15:34
0
where DATEDIFF(day, dt, '2008-09-03') = 0
Gray Zhang | 园豆:17610 (专家六级) | 2008-09-03 15:36
0
时间比较最好用时间函数DateDiff,不要用<,>。
roboth | 园豆:28 (初学一级) | 2008-09-03 15:57
0
感觉这里不仅是比较,还要取到一个范围 select * from 表名 where dt>='2008-5-11 ' and dt<'2008-5-12 ' 这里取的是2008-5-11 日一天的信息 感觉挺好的,又好用,看的又明白
程序员老李 | 园豆:790 (小虾三级) | 2008-09-03 16:32

简单就是最好的

支持(0) 反对(0) 广州大雄 | 园豆:188 (初学一级) | 2013-01-10 16:43
0
这里也有一种思路: WHERE YEAR(dt)=2008 AND MONTH()=5 AND DAY(dt)=11
stewen | 园豆:14 (初学一级) | 2008-09-03 17:02
0
最好不要在列上做计算,对效率有影响,所以最傻的办法可能是最好的 where dt>='2008-5-11' and dt<'2008-5-12'
丁学 | 园豆:18730 (专家六级) | 2008-09-03 17:32
0
时间段应该用datediff 下面有几个常用的时间段取值 http://www.cnblogs.com/zjy/archive/2006/05/18/403505.html
zjy | 园豆:3194 (老鸟四级) | 2008-09-03 17:38
0

select * from table1 where substring(cast(dt as char),9)='2008-5-11',这是最近写的,不知道能看懂否(MySql)

strCmd = "select status,"
                       + " DATE_FORMAT(" + tableNameOfMailStatus + ".rundate" + ",'%Y-%c-%d') as rundate,cast("
                       + tableNameOfMailStatus + ".runtime as char) as runtime ,failcode from table1......

有所为,有所不为 | 园豆:1200 (小虾三级) | 2008-09-05 10:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册