0

我想知道在编写 SQL 查询时是否可以在不同的列中使用 distinct。如果是这样,那么如果我的员工表具有 id、name、salary、addr 作为列,那么语句是什么

4

1 回答 1

3

Distinct 在整个元组中起作用。

你不能拥有

SELECT DISTINCT(name), salary, addr, Id from employee

如果你想按薪水分组,你可以做类似的事情

SELECT salary, name,  addr, Id from employee
GROUP BY name,  addr, Id 

进一步扩大

当您使用 distinct 时,它会消除整个结果集的重复项

所以如果你的桌子是这样的

1 '约翰' '1 我的街道' '$1000'

2 '珍妮特''1 我的街道' '$1000'

你打电话给

SELECT DISTINCT addr, salary FROM employee

你会得到 1 个结果

'1 我的街道' '$1000'

但如果你想打电话

SELECT DISTINCT addr, salary, **name** FROM employee

你会得到2个结果

“约翰”“1 我的街道”“1000 美元”
“珍妮特”“1 我的街道”“1000 美元”

你不能说给我不同的薪水和地址,但是用不同的名字。这没有意义

于 2009-10-05T09:55:49.977 回答