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 语句中使用它。这可能是一种解决方法?
使用 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 语句中使用它。这可能是一种解决方法?