以下是我找到的SQL语句:
SELECT d.name, count(e.emp_id) num_employees
FROM department d INNER JOIN employee e
ON d.dept_id = e.dept_id
GROUP BY d.name
HAVING count(e.emp_id) > 2;
Run Code Online (Sandbox Code Playgroud)
我想知道什么d.name,e.name或者d.dept_id是什么意思。有什么不同?
点.通常是表名。在你提到的句子中,d是别名的名字。如果你检查FROM语句,你有department d。这意味着您想从表中获取行department但将其引用为d(因为department是一个长字),因此您创建了一个别名。
为了消除字段歧义,因为不同的表可能具有相同的字段名称,您可以在字段前面加上表名(或别名),后跟点。
简而言之,您是在说:
name从 alias 中选择字段,并分别d从表department和employee,别名d和e等的连接中计算员工数。
| 归档时间: |
|
| 查看次数: |
30269 次 |
| 最近记录: |