sql小技巧 group by datetime类型字段,只取其中的日期部分
工作中经常会遇到,要在sql中查询报表,查询结果要求按照日期来罗列, 或按照天, 或按照月,年。
这个时候我们经常会苦恼,datetime是精确到毫秒的,如果单纯的group by datetime就会导致结果不正确。
这是我们可以利用convert函数:
SELECT convert(varchar(10),CreateDate,120) ,var1 ,var2 FROM Table GROUP BY convert(varchar(10),CreateDate,120) ASC
第一个参数是转换的类型,10是长度,根绝自己的需要来调整。
第二个参数是datetime型的字段。
第三个参数是日期格式。(详细格式参数可参考:http://www.w3school.com.cn/sql/func_convert.asp)