sqldependency是否适用于IN
运算符?
我的命令是:
SELECT n.PublishedAt
FROM dbo.Navigations n
WHERE NavigationGroupId IN (SELECT ng.Id FROM dbo.NavigationGroups ng
WHERE ng.SiteId = 1
AND ng.IsActive = 1
AND ng.[Type]= 'Secondary')
AND n.IsActive = 1
我看了MSDN Dodumentation,但没有提到关于IN运算符。
提前致谢。
答案 0 :(得分:3)
来自文档:
“语句不得包含子查询,外连接或自连接。”
IN通常映射到半连接。 Damien_The_Unbeliever指出:
IN()被定义为子查询或表达式序列 - OPs问题中的一个是子查询。
因此可能不支持。
你能否将IN表达为内部联接?如果IN查询为每个外行最多生成一行,则这将保留语义。如果有更多,那么行将被复制。但这对通知无关紧要。它应该在完全相同的情况下发射。