Db2

DB2 中的 OLAP 視窗函式

  • January 26, 2018

我正在使用 DB2 z/OS 11.1.5。根據this referencefirst_value ,至少在DB2 9.7 中應該支持OLAP 功能。但是,當嘗試執行查詢時

declare global temporary table T (reference integer, val integer) on commit preserve rows;
insert into session.T values(1, 10);
insert into session.T values(2, 20);
select first_value(val) over (order by reference) from session.T;

我得到了錯誤

NO AUTHORIZED FIRST_VALUE NAMED HAVING COMPATIBLE ARGUMENTS WAS FOUND. SQLCODE=-440, SQLSTATE=42884, DRIVER=4.18.60. 2) [Error Code: -514, SQL State: 26501] THE CURSOR SQL_CURLH200C1 IS NOT IN A PREPARED STATE.. 我知道錯誤程式碼列表。但是,這些描述並不能幫助我理解問題。

您正在混合 Db2(用於 Linux、Unix 和 Windows 的 Db2)和用於 z/OS 的 Db2。

Db2 9.7 是 LUW(Linux、Unix 和 Windows),並且 FIST_VALUE 在這些作業系統上可用。

Db2 for z/OS 不支持 FIRST_VALUE。

引用自:https://dba.stackexchange.com/questions/196320