/*sql99
语法:
SELECT 查询列表
from 表1 别名
【连接类型】join 表2 别名
on 连接条件
【where 连接条件】
【group by 分组】
【having 筛选条件】
【order by 排序条件】
内连接(最重要的) :
连接类型:inner
外连接
左外
连接类型:left 【outer】
右外
连接类型:right 【outer】
全外
连接类型:full 【outer】
交叉连接
连接类型:crose
*/
-- 1.等值连接
-- 案例1:查询员工名,部门名(调换位置)
SELECT last_name,department_name
FROM employees e
INNER JOIN departments d
ON e.department_id=d.department_id;
-- 案例2:查询员工名中包含e的员工名和工种名
SELECT last_name job_title
FROM employees e
INNER JOIN jobs j
ON e.job_id=j.job_id
WHERE last_name LIKE "%e%";
-- 案例3:查询部门个数>3的城市名和部门个数(分组+筛选)
SELECT city,COUNT(*) 部门个数
FROM departments d
JOIN locations l -- inner 可以省略
ON l.location_id=d.location_id
GROUP BY city
HAVING count(*)>3;
-- 案例4:查询哪个部门的部门员工个数>3的部门名和员工个数,并按个数降序 (排序)
SELECT department_name,COUNT(employee_id)
FROM departments d
INNER JOIN employees e
on d.department_id=e.department_id
GROUP BY department_name
HAVING COUNT(employee_id)>3
ORDER BY COUNT(employee_id);
-- 案例5:查询员工名、部门名、工种名,并按部门名降序
SELECT last_name,department_name,job_title
FROM employees e
INNER JOIN departments d
ON e.department_id=d.department_id
INNER JOIN jobs j
ON e.job_id=j.job_id
ORDER BY department_name desc;
07.1sql99语法-内连接-等值连接——MySQL
最新推荐文章于 2024-04-04 17:00:27 发布