DB2是否支持使用ORDER BY子句的SELECT-INTO语句? [英] does DB2 support SELECT - INTO statement with ORDER BY clause?

查看:202
本文介绍了DB2是否支持使用ORDER BY子句的SELECT-INTO语句?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



这是我的查询,它嵌入在COBOL程序中。


EXEC SQL

SELECT DATE,年龄,持续时间,AMT

INTO:LDATE,:L.AGE,:L.DURATION,:L.AMT

来自TAB1

WHERE CODE =:KEY.CODE

AND SET =:KEY.SET

AND DATE< =:KEY.DATE

AND AGE> =:KEY.AGE

AND DURATION> =:KEY.DURATION

订购日期DESC,AGE ASC,DURATION ASC

FOR READ只需

FETCH第一个1行只需

优化1行

END-EXEC


我编译它,模块错误输出,原因如下:FOR

FETCH ONLY不支持。这个,尽管我不使用FOR FETCH。


我现在怀疑DB2是否支持使用ORDER BY的SELECT-INTO。

是或不是?

Hi,
This is my query which is embedded in a COBOL program.

EXEC SQL
SELECT DATE, AGE, DURATION, AMT
INTO :LDATE, :L.AGE, :L.DURATION, :L.AMT
FROM TAB1
WHERE CODE = :KEY.CODE
AND SET = :KEY.SET
AND DATE <= :KEY.DATE
AND AGE >= :KEY.AGE
AND DURATION >= :KEY.DURATION
ORDER BY DATE DESC, AGE ASC, DURATION ASC
FOR READ ONLY
FETCH FIRST 1 ROW ONLY
OPTIMIZE FOR 1 ROW
END-EXEC

When I compile it, the module errors out, giving the reason as :FOR
FETCH ONLY not supported. This, inspite of me not using FOR FETCH ONLY.

I now doubt whether DB2 supports SELECT-INTO with ORDER BY.
Does it or does it not?

推荐答案

仅将FETCH FIRST 1行放入在FOR READ ONLY之前和OPTIMIZE FOR 1

ROW。


" FETCH FIRST 1 ROW ONLY"是Subselect的一部分。

FOR READ ONLY和优化1行是select-sttement的一部分。

Put "FETCH FIRST 1 ROW ONLY" before "FOR READ ONLY" and "OPTIMIZE FOR 1
ROW".

"FETCH FIRST 1 ROW ONLY" is part of Subselect.
"FOR READ ONLY" and "OPTIMIZE FOR 1 ROW" are part of Select-sttement.


即使这不起作用。

Even this does not work.


您使用的是什么DB2版本和平台?

What DB2 version and platform are you using?


这篇关于DB2是否支持使用ORDER BY子句的SELECT-INTO语句?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆