比方说,我们有列“名称”一表名为Employee:此查询的替代方法?
+---------+
| Name |
+---------+
| Jack |
+---------+
| Paul |
+---------+
| Jack |
+---------+
有了明显的名称,我们可以运行此查询:
Select DISTINCT Name
from Employee
是否有任何其他方式来获取不同值?
比方说,我们有列“名称”一表名为Employee:此查询的替代方法?
+---------+
| Name |
+---------+
| Jack |
+---------+
| Paul |
+---------+
| Jack |
+---------+
有了明显的名称,我们可以运行此查询:
Select DISTINCT Name
from Employee
是否有任何其他方式来获取不同值?
Select Name
from Employee
Group by Name
这也给出相同的结果
我不知道为什么你不希望使用不同的,但你可以GROUP BY
Select Name
from Employee
group by Name;
如果你只是想获得一些乐趣:
select top 1 with ties Name
from Employee
order by ROW_NUMBER() over(partition by Name order by Name)
;with #temp(Select Name,row_number()over(partition by name order by name desc) as seq)
Select Name from #temp where seq=1
嗨Mani;你的代码可能是正确的,但它会在某些情况下做出更好的回答;例如,您可以解释如何以及为什么这个提议的变更可以解决提问者的问题,或许还包括指向相关文档的链接。这将使它对他们更有用,而且对寻求类似问题解决方案的其他网站读者也更有用。 –
有很多其他的方法。这是最好的。 –
为什么?您的查询是标准方式。 – jarlh