在sql server中的where子句中筛选出重复的结果

时间:2016-05-04 17:30:43

标签: oracle

从用户中选择*,其中用户名等于'jw'

2 个答案:

答案 0 :(得分:0)

DISTINCT之后直接添加SELECT,或者在WHERE子句之后使用GROUP BY子句。

ex:GROUP BY works.memb_id

答案 1 :(得分:0)

我想我明白你要做什么。 WorkID,EmployeeID和MembID都必须是1:1,然后您要对所有三个字段进行分组。

您已声明每个Memb_id都已分配给唯一的员工。如果WorkID不是那么您将需要使用聚合函数来选择在组之后返回的记录之一。例如Min(),Max()或类似Row_Number和/或Rank的窗口函数。

例如

WorkID, EmployeeID, MembID
1  1  1
2  1  1
3  2  2
4  1  1

如果你使用Min(WorkID),EmployeeID,MembID .... Group By EmployeeID,MembID你会得到:

WorkID, EmployeeID, MembID
1  1  1
3  2  2

如果这不是您正在寻找的整体样本数据,那么您需要的结果是什么。