sql server 数据库,在查询sql语句中日期格式转换问题,怎么把原数据年月日时分秒转换成年月日

原来case_col_rec表中col_time字段是带时分秒的,怎么在查询这个字段的时候只取年月日。例如col_time存储的是2016-10-18 10:05:00,我要用2016-10-18这部分做筛选条件来筛选这这个表中存储的这一天的所有记录。

--取'2016-10-18'这天的数据
Select * From case_col_rec Where cast(col_time as date)='2016-10-18'

如果你只是要取某天的数据,不建议你转换数据类型後来匹配,因为那样不会走索引

Select * From case_col_rec Where col_time>='2016-10-18' And col_time<'2016-10-19'
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-19
col_time存储的是2016-10-18 10:05:00 ,要2016-10-18这部分
Select * From case_col_rec Where substr (col_time,0,10)
直接截取col_time 前十位就好了, 好久没写sql了,不知道是从0开始还是1开始.
错了你就把0改成1