我遇到过如下的SQL代码
SELECT DISTINCT FLD1, FLD2, FLD3, FLD4 FROM
TBL1 WHERE FLD1 = 'MFG' AND FLD2 = '1'
我怀疑在FLD1之前应用的DISTINCT关键字。存在过滤条件以仅选择FLD1 ='MFG'的那些记录。那么明显不同会有什么不同吗?
我在没有DISTINCT的情况下运行相同的SQL,并且检索到的记录数与DISTINCT相同。
这是为iSeries上的DB2数据库编写的。
答案 0 :(得分:3)
它消除了所有重复记录,只获取了唯一记录。
示例:
表员工
Id Name Salary
1 Alex 2000
2 Alxender 1000
3 Paul 2000
4 Alex 2000
select distinct Salary
from Employees;
它将返回:
Salary
2000
1000
select distinct Name,Salary
from Employees;
将返回:
Name Salary
Alex 2000
Alxender 1000
Paul 2000
查询:
select distinct Salary,Name
from Employees
where salary = 2000;
将返回:
Name Salary
Alex 2000
Paul 2000