我尝试在SPUFI中运行查询:
select * from (select * from emptable
order by empno asc fetch first 10 rows only) as A
order by empno desc fetch first 1 rows only;
返回的错误是:
sqlcode = -4700,错误:在new function mode之前尝试使用new function .
我正在运行DB2 for z/OS version 9
问题是在子选择中使用了order by
和fetch first
—这是DB2 for z/OS版本9之前不存在的特性:
在早期版本的DB2 for z/OS中,ORDER BY和FETCH FIRSTn行的一部分只在语句级别支持ONLY子句SELECT -statement或SELECT INTO语句。版本9提供了更多通过允许FETCH FIRST来实现灵活性n仅行和按顺序子句当它们被指定为子选择或全选择语句的一部分时。
(DB2 Version 9.1 for z/OS -有什么新功能?)gc18 - 9856 - 12)
显然,您的db2安装仍然在兼容模式下运行,并且尚未切换到新功能模式,因此此特性还不可用。
请注意,您的安装有一个比CM <-> NFM更严重的问题,因为
对DB2 for z/OS Version 9的支持于2014年6月27日停止。