date_part – 当使用where子句时出现错误。

我有一张桌子,看起来像这样

enter image description here

我想把销售额加起来,只显示2010年的销售额。 使用DATE_PART可以工作,除了当我尝试使用WHERE子句时

SELECT date_part('year', date) AS year, SUM(weekly_sales) as yearly_sales
FROM sales
GROUP BY year

enter image description here

SELECT date_part('year', date) AS year, SUM(weekly_sales) as yearly_sales
FROM sales
GROUP BY year
WHERE year = 2010;

是不是因为date_part是双精度?

解决方案:

WHERE 该条款 之前GROUP BY 子句中定义的列别名,并且它不能访问在 SELECT 条款。

你可以这样做。

SELECT date_part('year', date) AS year, SUM(weekly_sales) as yearly_sales
FROM sales
WHERE date_part('year', date) = 2010
GROUP BY year

或者,更有效的。

SELECT 2010 AS year, SUM(weekly_sales) as yearly_sales
FROM sales
WHERE date >= date '2010-01-01' and date < date '2011-01-01'

给TA打赏
共{{data.count}}人
人已打赏
解决方案

css-animation对表格行的高度有何影响?

2022-4-21 21:00:08

解决方案

为什么Unity使用transform而不是gameObject的一些函数,如GetChild()?

2022-4-21 21:00:11

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索