SELECT s.* FROM (SELECT setUserId('abcd123') p) tmp_p, main_article_view s
问题是MySQL中的函数setUserId(userId char(36))
设置了一个会话变量,在我第一次运行此查询时在main_article_view;
中使用它,它不起作用,因为该函数在结束。
但是当我第二次运行它时,它确实运行良好;因为先前在会议中首次运行时设置了。
我的限制是我不能使用简单的:=
运算符在NHibernate中设置userIdParam
(会话变量);因为NHibernate使用:
作为命名参数。
以下查询有效,但它不能像我在NHibernate中所说的那样工作。
SELECT s.* FROM (SELECT @userIdParam:='abc123' p) tmp_param, main_article_view s
我正在做的解决方法 - 现在首先调用函数setUserId()
,然后单独调用实际查询,如select * from main_article_view
,这有效,但接下来会有两个调用,我不会喜欢。
实际上我只想使用View with parameter;那么欢迎任何建议吗?
谢谢&此致