我想知道在编写SQL查询时是否可以在不同的列中使用distinct。如果是,那么如果我的员工表具有id,name,salary,addr as columns
,那么该语句是什么答案 0 :(得分:3)
没有
区别于整个元组。
你不能拥有
SELECT DISTINCT(name), salary, addr, Id from employee
如果你想按工资分组,你可以做一些像
这样的事情SELECT salary, name, addr, Id from employee
GROUP BY name, addr, Id
进一步扩展
当您使用distinct时,它会消除整个结果集的重复
所以,如果你的表是这样的话
1'John''1我的街道''$ 1000'
2'Janet''1我的街道''$ 1000'
你打电话
SELECT DISTINCT addr, salary FROM employee
你将得到1个结果
'1我的街道''$ 1000'
但是如果你想打电话
SELECT DISTINCT addr, salary, **name** FROM employee
你将得到2个结果
'约翰''1我的街道''$ 1000'
'珍妮特''我的街道''$ 1000'
你不能说给我一个不同的工资和地址,但名字不同。它没有意义