有没有更好的方法来做这样的查询:
SELECT COUNT(*) FROM (SELECT DISTINCT DocumentId, DocumentSessionId FROM DocumentOutputItems) AS internalQuery
我需要计算此表中不同项目的数量,但不同的项目超过两列。
我的查询工作正常,但我想知道是否可以仅使用一个查询(不使用子查询)获得最终结果
如果您正在尝试提高性能,您可以尝试在两列的哈希值或连接值上创建一个持久计算列。
一旦它被持久化,只要该列是确定性的并且您使用的是“健全的”数据库设置,它就可以被索引和/或可以在其上创建统计信息。
我相信计算列的不同计数将等同于您的查询。