【发布时间】:2021-03-16 05:33:43
【问题描述】:
我有两张表,一张是employees,另一张是details。在这里,我需要查询来显示拥有多个电话号码的员工。
员工表:
employee_id Name salary
----------- ------- --------------------
0001 John 100000
0002 Peter 50000
0003 Russel 60000
0004 Bill 60000
0005 Patrick 90000
明细表:
employee_id Address phone
----------- ------- --------------------
0001 USA 854646542
0002 Germany 656562354
0001 USA 465222333
0004 China 888444444
0005 Canada 012445869
0005 Canada 789875877
0003 Japan 444555807
据此,我需要显示拥有多个电话号码的员工,因此预期的输出应该是
employee_id Name phone
----------- ------- --------------------
0001 John 854646542
0001 John 465222333
0005 Patrick 012445869
0005 Patrick 789875877
我尝试过的查询:
SELECT COUNT(*)
FROM (
SELECT employee_id, COUNT(*) AS CNT
FROM details
GROUP BY employee_id
) AS T
WHERE CNT > 1
【问题讨论】:
-
另请注意,
details和employees都没有Name。要获取名称,请使用JOIN。 -
更新了我的问题@Akina