• MySQL之三个表的连接查询


    在某学习网站上看到的课后练习题,经过自己的查询和调试终于找到了正确的方法,记录下来方便后面的学习;


     在此有三个表格分别是:employee,project,department,表格内容如下图,

    1、使用连接查询的方式,查询出各员工所在部门的人数与对应的工程数目,工程数命名为 count_project。(连接3个表,并使用COUNT内置函数):

    MySQL代码如下

    (先以查询id=1,即Tom的为例):

    如上表,由表employee中可知Tom所在的部门为dpt4,由表department可知dpt4部门有15个人,最后由表project可知dpt参与了两个工程,分别为proj_c、proj_e,下面的查询可以看到;

    查询所有人时,只需分组查询即可,如下(inner join 中的inner可有可无):


     此外,还可以增加一个group_concat函数来分组统计项目名称,代码如下:


     对于上面的连接查询,自己在做一些面试题的时候又总结了一种比较容易明白的表达方法:如图

    可以看到,查询的结果是一样的,没有最好的方法,只有适合的方法;贴出来和大家一起交流吧

    个人能力有限, 以上如有错误之处,请各位大神多指正,谢谢!

  • 相关阅读:
    计算机网络基础1
    jmeter 之系统参数根据条件修改
    jmeter 之变量传递
    ant 执行jmeter脚本
    ant安装报错:ANT_HOME is set incorrectly or ant could not be located. Please set ANT_HOME.
    数据类型的转换
    你真的了解JavaScript的数据类型吗?
    js的一些常识
    数组扁平化
    vue.config.js
  • 原文地址:https://www.cnblogs.com/feigebaqi/p/9223992.html
Copyright © 2020-2023  润新知