gpt4 book ai didi

sql - 除 INTO 或 VALUES 子句外,不能使用组项

转载 作者:行者123 更新时间:2023-12-04 05:32:40 26 4
gpt4 key购买 nike

这个 sql 看起来没问题,但在编译过程中遇到错误..

SELECT COUNT(*)
INTO :W9-TOT-TRXN
FROM IRC02
WHERE SUBSTR(P9_IRC_PST_DT,1,6) = :Ws-DATE-YM
AND F9_IRC_FI = :W9-FI-PARAM
AND P9_IRC_PRIN_CRN = :F9-IR025-CRN
AND F9_IRC_LOC_ACCT = :F9-IR025-LOC-ACCT

错误信息如下:

文件 RCCO.cbl 中第 757 行第 60 列的错误
                    WHERE SUBSTR(P9_IRC_PST_DT,1,6) = :Ws-DATE-YM

PCB-S-00204,除了 INTO 或 VALUES 子句外,不能使用组项目
01 Ws-DATE-YMD.
03 Ws-DATE-YM.
05 W9-DATE-YY PIC 9(04) VALUE ZEROES.
05 W9-DATE-MM PIC 9(02) VALUE ZEROES.
03 W9-DATE-DD PIC 9(02) VALUE ZEROES.

有什么想法吗?谢谢:)

最佳答案

Group items cannot be used as host variables in the where clause正如错误所说。您需要单独引用基本项目,例如:

SELECT COUNT(*)
INTO :W9-TOT-TRXN
FROM IRC02
WHERE SUBSTR(P9_IRC_PST_DT,1,4) = :Ws-DATE-YM.W9-DATE-YY
AND SUBSTR(P9_IRC_PST_DT,5,2) = :Ws-DATE-YM.W9-DATE-MM
AND F9_IRC_FI = :W9-FI-PARAM
AND P9_IRC_PRIN_CRN = :F9-IR025-CRN
AND F9_IRC_LOC_ACCT = :F9-IR025-LOC-ACCT

或者也许性能更高:
WHERE SUBSTR(P9_IRC_PST_DT,1,6) = :Ws-DATE-YM.W9-DATE-YY || :Ws-DATE-YM.W9-DATE-MM

虽然我是从文档而不是从经验出发,所以这完全未经测试;也不确定您是否需要包含父级 Ws-DATE-YMD前两部分,还是会满意一层吧。

关于sql - 除 INTO 或 VALUES 子句外,不能使用组项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12383201/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com