我遇到了如下SQL代码
SELECT DISTINCT FLD1, FLD2, FLD3, FLD4 FROM
TBL1 WHERE FLD1 = 'MFG' AND FLD2 = '1'
我的疑问在于 FLD1 之前应用的 DISTINCT 关键字。有一个过滤条件,即仅选择 FLD1 = 'MFG' 的那些记录。那么,与众不同有什么不同吗?
我在没有 DISTINCT 的情况下运行了相同的 SQL,并且检索的记录数与 DISTINCT 相同。
这是为 iSeries 上的 DB2 数据库编写的。
它消除了所有重复的记录,只获取唯一的记录。
例:
表员工
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