【发布时间】:2011-03-26 00:38:56
【问题描述】:
除了使用 DISTINCT 函数之外,还有更好的方法从一个表中的三列中获取所有不同的值吗?我也试过GROUP BY,但成本似乎没有任何明显差异。
SELECT DISTINCT Table1.Col1, Table2.Col1, Table1.Col3
FROM Table1
INNER JOIN Table2 ON Table1.FK = Table2.ID
WHERE Table1.Foo = 1865 AND Table2.Type = 1
【问题讨论】:
-
FROM 子句中没有
Table3。 -
这里的场景是什么?为什么要区分数据?
-
相关问题,您为什么不想要区分数据?
DISTINCT在这里不可用是有原因的吗? -
@RedFilter:修正了示例以省略 Table3 并注意所有三列都来自一个表。
-
@Justin:我可以使用 DISTINCT,我只是想知道是否有更好的选择。
标签: sql sql-server tsql performance distinct