liyupi / sql-mother

免费的闯关式 SQL 自学教程网站,从 0 到 1 带大家掌握常用 SQL 语法,纯前端实现,简单易学~
http://sqlmother.yupi.icu
3.07k stars 352 forks source link

查询进阶 - 关联查询 - cross join #41

Open AsinShaoQing opened 10 months ago

AsinShaoQing commented 10 months ago

示例的查询结果和SQL代码好像不太匹配? 如果按照示例的SQL代码,跑一遍出来的结果应该是 +----------+--------+------------+---------+ | emp_name | salary | department | manager | +----------+--------+------------+---------+ | 小明 | 5000 | 技术部 | 张三 | | 小明 | 5000 | 技术部 | 李四 | | 小明 | 5000 | 技术部 | 王五 | | 李华 | 4500 | 销售部 | 张三 | | 李华 | 4500 | 销售部 | 李四 | | 李华 | 4500 | 销售部 | 王五 | | 鸡哥 | 6000 | 财务部 | 张三 | | 鸡哥 | 6000 | 财务部 | 李四 | | 鸡哥 | 6000 | 财务部 | 王五 | +----------+--------+------------+---------+ 但这个和示例给出的结果不太相同,如果把SQL语句改成 mysql> select e.emp_name, e.salary, d.department, d.manager -> from employees e, departments d -> order by emp_name asc; 这样出来的结果是 +----------+--------+------------+---------+ | emp_name | salary | department | manager | +----------+--------+------------+---------+ | 小明 | 5000 | 技术部 | 张三 | | 小明 | 5000 | 财务部 | 李四 | | 小明 | 5000 | 销售部 | 王五 | | 李华 | 4500 | 技术部 | 张三 | | 李华 | 4500 | 财务部 | 李四 | | 李华 | 4500 | 销售部 | 王五 | | 鸡哥 | 6000 | 技术部 | 张三 | | 鸡哥 | 6000 | 财务部 | 李四 | | 鸡哥 | 6000 | 销售部 | 王五 | +----------+--------+------------+---------+ 这样就和示例的结果相同了 所以问题应该是department的归属问题?

aiwq2 commented 10 months ago

我也感觉应该是这样