1
我們目前在SAP Hana SPS12中遇到Window Functions問題。SAP Hana - 使用ORDER BY CLAUSE的STRING_AGG問題
我們的錯誤之一是當我們使用STRING_AGG
函數。
下面是代碼:
/*
CREATE TABLE TEST_STR_AGG (
GROUP_ID varchar(1)
, CLASS_ID varchar(5)
, MEMBER varchar(5)
);
*/
TRUNCATE TABLE TEST_STR_AGG;
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX1', 'A0001');
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX1', 'A0002');
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX1', 'A0003');
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX2', 'A0004');
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX2', 'A0005');
INSERT INTO TEST_STR_AGG VALUES ('A', 'A_XX3', 'A0006');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX1', 'B0001');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX2', 'B0002');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX3', 'B0003');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX4', 'B0004');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX4', 'B0005');
INSERT INTO TEST_STR_AGG VALUES ('B', 'B_XX4', 'B0006');
SELECT GROUP_ID
, CLASS_ID
, STRING_AGG(MEMBER, ' ; ' **ORDER BY MEMBER ASC**) as MEMBERS
FROM TEST_STR_AGG
GROUP BY GROUP_ID
, CLASS_ID ;
用於與ORDER BY
條款完美運行補丁安裝前的STRING_AGG
。現在,它只能使用少量的線條,因爲它在我給你的例子中工作。當我們處理超過500,000行時,如果我們在STRING_AGG
中添加ORDER BY
子句,那麼某些行將從我們的結果中消失。如果我們不是,它的工作原理。
我們在FIRST_VALUE
和LAST_VALUE
函數上有同樣的問題。
這似乎是被破壞的結果的核心優化規則...
有誰知道一些關於這一點,好嗎?
非常感謝
事實上,我們開始有,因爲我們應用122.02,在9月23日)的這個錯誤!它不與2個聚合函數的組合相關聯,但是隻有一個在大量的線上。 – KrasshX
在這種情況下,您應該打開一個支持事件來修復更新版本。 –
「Order By」按照Lars在版本1.00.122.04上運行的數據庫 – Eralper