MySQL中的连接查询实例分析

发布时间:2022-07-20 13:37:36 作者:iii
来源:亿速云 阅读:82

本篇内容主要讲解“MySQL中的连接查询实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL中的连接查询实例分析”吧!

1. 笛卡尔乘积

表1有m行数据,表2有n行数据,查询结果有m*n行数据。

2. 分类

(1)按年代分类

sql92标准:仅支持内连接

sql99标准(推荐):支持内连接、外连接(左外连接和右外连接)、交叉连接

(2)按功能分类

内连接:等值连接、非等值连接、自连接

外连接:左外连接、右外连接、全外连接

交叉连接

3. 等值连接

(1)查询女生名及其对应的男朋友名

SELECT 
    girlname,
    boyname
FROM
    boys,
    girls
WHERE
    girls.boyfriend_id=boys.girlfriend_id;

(2)查询员工名(last_name)和对应的部门名(department_name)-------------(根据关联的id查询)

SELECT 
    last_name,
    department_name
FROM
    JDSC,
    SNSC
WHERE
    JDSC.`id`=SNSC.`id`;

(3)查询员工名(last_name)、工种号(job_id)、工种名(job_title) (员工表:JDSC  工作表:JOBSC)------为表起别名,提升简洁度,避免歧义

#"e.job_id"是为了避免歧义
SELECT
    last_name,
    e.job_id,
    job_title
FROM
    ESC e,
    JOBSC j
WHERE
    e.`job_id`=j.`job_id`;

注意:

如果为表起了别名,则查询的字段不能使用原来的表名去限定。

上述两个表的顺序可互换

(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%';

到此,相信大家对“MySQL中的连接查询实例分析”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. mysql连接查询的简单操作
  2. mysql如何实现连接查询

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mysql

上一篇:vue中的el-button样式怎么自定义

下一篇:怎么集成Spring Retry实现失败重试和熔断器模式

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》