将Calling语句捕获为变量

时间:2017-04-21 15:27:27

标签: hana

想知道是否可以捕获调用查询...示例

SELECT SITE,NAME,COUNT(ITEMS) FROM SQLVIEW1 WHERE NAME = 'JIM'

在SQL视图中它有类似这样的东西

DECLARE VAR1

其中VAR1等于触发该过程的上述查询。

"SELECT SITE,NAME,COUNT(ITEMS) FROM SQLVIEW1 WHERE NAME = 'JIM'"

1 个答案:

答案 0 :(得分:1)

不,没有这样的变数。

您可以通过系统表的巧妙连接找到当前正在执行的语句:

SELECT STATEMENT_STRING FROM SYS.M_TRANSACTIONS AS TR
INNER JOIN SYS.M_PREPARED_STATEMENTS AS ST
ON TR.CURRENT_STATEMENT_ID = ST.STATEMENT_ID
WHERE TR.CONNECTION_ID = CURRENT_CONNECTION

然而,对我来说,概念上看错了,视图依赖于它的调用语句。也许解释一下你想要实现的目标,有人可以提出更好的解决方案吗?