SQL 按日期时间分组语句的写法
如表person有两字段id_no(varchar),in_date(datetime)in_date是日期+时间的字段我现在要按in_date进行分组如下:SELECT...
如表person 有两字段id_no (varchar),in_date (datetime)
in_date 是日期+时间的字段
我现在要按in_date 进行分组
如下:SELECT in_date FROM person GROUP BY in_date
可是发现很多相同的in_date却没有合并成组;
而用:SELECT CASE WHEN len(in_date) > 10 THEN CONVERT(varchar, in_date, 120) ELSE in_date END AS in_date FROM person GROUP BY CASE WHEN len(in_date) > 10 THEN CONVERT(varchar, in_date, 120) ELSE in_date END
又是正确的。
请问这两种写法有什么不同?谢?
是不是默认按时间分组,它会精确到毫秒,而用CONVERT(varchar, in_date, 120) 只会精确到秒? 展开
in_date 是日期+时间的字段
我现在要按in_date 进行分组
如下:SELECT in_date FROM person GROUP BY in_date
可是发现很多相同的in_date却没有合并成组;
而用:SELECT CASE WHEN len(in_date) > 10 THEN CONVERT(varchar, in_date, 120) ELSE in_date END AS in_date FROM person GROUP BY CASE WHEN len(in_date) > 10 THEN CONVERT(varchar, in_date, 120) ELSE in_date END
又是正确的。
请问这两种写法有什么不同?谢?
是不是默认按时间分组,它会精确到毫秒,而用CONVERT(varchar, in_date, 120) 只会精确到秒? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询