MySQL中的连接查询(等值连接)


当前第2页 返回上一页

(4)查询有奖金的员工名、部门名

#员工名:last_name
#部门名:department_name
#奖金率:commissiom_pct
SELECT
? ? last_name,
? ? department_name,
? ? commissiom_pct
FROM
? ? employees e,
? ? department d
WHERE
? ? e.`department_id`=d.`department_id`
AND
? ? e.`commissiom_pct` IS NOT NULL;

(5)分组查询——查询每个城市的部门个数

#城市分组表名:city
#部门分组表名:departments?
SELECT
? ? COUNT(*) 个数,
? ? city
FROM
? ? departments d,
? ? locations l
WHERE
? ? d.`location_id`=l.`location_id`
GROUP BY
? ? city;

(6)排序——查询每个工种的工种名和员工个数,并按员工个数降序

SELECT?
? ? job_title,
? ? COUNT(*)
FROM
? ? emloyees e,
? ? jobs j
WHERE
? ? e.`job_id`=j.`job_id`
GROUP BY
? ? job_title
ORDER BY
? ? COUNT(*) DESC;

(7)三表连接——查询员工名、部门名和所在的城市

SELECT
?? ?last_name,
?? ?department_name,
?? ?city
FROM
?? ?employees e,
?? ?departments d,
?? ?locations l
WHERE
?? ?e.`department_id`=d.`department_id`
AND
?? ?d.`location_id`=l.`location_id`
AND?
? ? city LIKE 's%';

4. 总结

1)多表等值连接的结果为多表的交集部分

2)m表连接,至少需要n-1个连接条件

3)多表的顺序没有要求

4)一般需要为表起别名

5)可以搭配所有子句使用,例如排序、分组、筛选

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

更多Mysql内容来自木庄网络博客


标签:Mysql

返回前面的内容

相关阅读 >>

mysql打开数据库的命令是什么

mysql5.7的json基本操作(代码示例)

详细介绍windows下mysql安装教程

mysql如何获取当前时间

mysql读写锁怎么添加?

mysql如何添加多个btree索引

怎么设置mysql的环境变量

关于mysql中日志以及备份还原的图文代码详解

mysql workbench 安装教程

python使用mysql的两种使用方式

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...