SQL 组按年 [英] SQL Group by Year

查看:34
本文介绍了SQL 组按年的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的查询.

select CONVERT(varchar, cast(date as datetime), 3)
from shoptransfer 
group by year (date)

我想按日期 (varchar) 列的年份部分进行分组,但是出现以下错误:

I want to group by the year part of the date (varchar) column, however I get the following error:

选择列表中的列shoptransfer.Date"无效,因为它既没有包含在聚合函数中,也没有包含在 GROUP BY 子句中.

Column 'shoptransfer.Date' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

如何按日期列的年份部分分组?

How do I group by the year part of the date column?

推荐答案

怎么样:

select datepart(yyyy, [date]) as [year]
from shoptransfer 
group by datepart(yyyy, [date])

或者:

select count(*) as qty, datepart(yyyy, [date]) as [year]
from shoptransfer 
group by datepart(yyyy, [date])
order by [year]

这是基于 OP 的命令:我想按日期(varchar)列的年份部分进行分组"

This is based on OP's command: "I want to group by year part of date (varchar) column"

这篇关于SQL 组按年的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆