为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:
【CPU】:
【问题描述】*:查询语句分区计数怎么才能支持,如下语句报错
select ROWNUM OVER ( PARTITION BY zbid ORDER BY sptbdm ) from tablea
回答 0
暂无回答
Tomliu
你sql写的有误吧,应该是ROW_NUMBER() OVER (partition by xx ORDER BY xx DESC) ,参考示例如下:
DROP TABLE IF EXISTS "SYSDBA"."ORDERINFO";
CREATE TABLE "SYSDBA"."ORDERINFO"
(
"ID" INT IDENTITY(1, 1) NOT NULL,
"USERID" NVARCHAR(50 CHAR) NOT NULL,
"TOTALPRICE" FLOAT NOT NULL,
"ORDERTIME" DATETIME(6) NOT NULL,
NOT CLUSTER PRIMARY KEY("ID")) STORAGE(ON "MAIN", CLUSTERBTR) ;
INSERT INTO ORDERINFO
(USERID
,TOTALPRICE
,ORDERTIME)
VALUES
('1', 111, CAST('2011-01-01' AS DATETIME)),
('1', 112, CAST('2011-01-02' AS DATETIME)),
('3', 311, CAST('2013-01-01' AS DATETIME)),
('3', 312, CAST('2013-01-02' AS DATETIME)),
('2', 211, CAST('2012-01-01' AS DATETIME)),
('2', 212, CAST('2012-01-02' AS DATETIME)),
('1', 113, CAST('2011-01-03' AS DATETIME)),
('2', 213, CAST('2012-01-03' AS DATETIME)),
('3', 313, CAST('2013-01-03' AS DATETIME));
COMMIT;
SELECT * FROM ORDERINFO;
SELECT ID,USERID,TOTALPRICE,ORDERTIME,ROW_NUMBER() OVER (partition by USERID ORDER BY ORDERTIME DESC) AS ROWINDEX FROM ORDERINFO;
你sql写的有误吧,应该是ROW_NUMBER() OVER (partition by xx ORDER BY xx DESC) ,参考示例如下: