HANA sql - 无法在子查询中使用序列号

HANA sql - unable to use sequence number within subquery

使用 SAP Hana Studio,我尝试使用最后插入的行的 ID。我得到的错误是 "feature not supported. sequence number not allowed here".

INSERT INTO RI_PORTFOLIO.GAR_ESTUDOS VALUES
                            (SEQ_ID_ESTUDO.NEXTVAL,
                             9, 10, 'RI_PORTFOLIO.ATRIBUTOS_DE_UC', NULL, 11);

SELECT * FROM RI_PORTFOLIO.GAR_ESTUDOS WHERE ID_ESTUDO = (SELECT TOP 1 SEQ_ID_ESTUDO.CURRVAL FROM RI_PORTFOLIO.GAR_ESTUDOS);

还有什么方法可以获取最后插入的 ID?我不熟悉哈纳话。

您不能在 select 语句或 where 子句中使用序列。我也是今天才发现的!

查看此页面以了解有关在何处可以和不可以使用序列 CURRVAL 或 NEXTVAL 的更多信息。

https://help.sap.com/saphelp_hanaplatform/helpdata/en/20/d509277519101489029c064d468c5d/content.htm

也许找到当前序列值并使用它来填充局部变量,然后在您的 where 语句中使用它。这可能是一种解决方法?