Oracle 错误 - "Pending":标识符无效



我正在用oracle创建一个带有typeorm的查询。

我在选择中使用这个,因为状态可以为null。

'NVL(Details.status, "Pending") AS "PostulationDetail_status"'

我以前使用过这个,但使用了0,因为我使用的是数字。我决定用绳子测试,我很惊讶。我在控制台上看到这个错误

[Nest] 620  - 18-11-2021 12:20:29   ERROR [ExceptionsHandler] ORA-00904: "Pending": invalid identifier
QueryFailedError: ORA-00904: "Pending": invalid identifier

我不知道如何编写查询,所以它是有效的。有人有这样的经历吗?

您希望在字符串文字周围使用单引号,在标识符周围使用无引号(首选,不区分大小写选项(或双引号(区分大小写(:

NVL(Details.status, 'Pending') AS "PostulationDetail_status"

如果使用双引号:

NVL(Details.status, "Pending") AS "PostulationDetail_status"

然后您要返回DETAILS.STATUS值(此标识符不区分大小写(,或者,如果是NULL,则使用Pending列的值(此标识区分大小写,并将该值别名为PostulationDetail_status(同样区分大小写。(。

最新更新