具有SqlDependency的IN运算符不工作
本文关键字:工作 运算符 IN SqlDependency 具有 | 更新日期: 2023-09-27 17:57:26
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文档,但没有提到IN运算符。
提前谢谢。
来自文档:
语句不能包含子查询、外部联接或自联接。
IN通常映射到半联接。Damien_The_Unbeliever指出:
IN()被定义为子查询或表达式序列——OP问题中的表达式是子查询。
因此,它可能不受支持。
你能把IN表示为内部联接吗?如果IN查询为每一个外部行最多生成一行,这将保留语义。如果有更多,则行将被复制。不过,这对通知来说并不重要。它应该在完全相同的情况下发射。