查询报错求解

qq_39229809 2018-11-06 11:09:52
select * from (
select SUM(money)as MONEY,month(createdate),year(createdate) from tb_payrecord

group by month(createdate),year(createdate)
)

很简单的语句不知道为什么会报错。


...全文
63 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 2018-11-06
  • 打赏
  • 举报
回复
SELECT
*
FROM
(
SELECT
SUM(money) AS MONEY,
MONTH(createdate) 别名1,
YEAR(createdate) 别名2
FROM
tb_payrecord
GROUP BY
MONTH(createdate),
YEAR(createdate)
) t;
吉普赛的歌 2018-11-06
  • 打赏
  • 举报
回复
USE tempdb
GO
IF OBJECT_ID('tb_payrecord') IS NOT NULL DROP TABLE tb_payrecord
GO
CREATE TABLE tb_payrecord(
	createdate DATETIME,
	[money] INT
)
GO
SET NOCOUNT ON
INSERT INTO tb_payrecord(createdate,[money]) VALUES('2018-10-01',20);
INSERT INTO tb_payrecord(createdate,[money]) VALUES('2018-10-02',30);
INSERT INTO tb_payrecord(createdate,[money]) VALUES('2018-11-05',40);
INSERT INTO tb_payrecord(createdate,[money]) VALUES('2018-11-06',50);
GO
----- 以上为测试数据 ----

SELECT *
FROM   (
           SELECT SUM(MONEY)         AS MONEY,
                  MONTH(createdate)  AS m,      --必须指定别名
                  YEAR(createdate)   AS y       --必须指定别名
           FROM   tb_payrecord
           GROUP BY
                  MONTH(createdate),
                  YEAR(createdate)
       ) AS t    --必须指定别名

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧