22,210
社区成员
发帖
与我相关
我的任务
分享
SELECT
*
FROM
(
SELECT
SUM(money) AS MONEY,
MONTH(createdate) 别名1,
YEAR(createdate) 别名2
FROM
tb_payrecord
GROUP BY
MONTH(createdate),
YEAR(createdate)
) t;
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 --必须指定别名