表employee字段e_id主键e_name表vacation字段vacation_days,vacation_type,e_id外键表overtime字段pour_days,e_id外键以下为查询语句语句1SELECTemployee.e_name,employee.e_entrydat...

表 employee 字段 e_id 主键 e_name

表 vacation 字段 vacation_days,vacation_type,e_id外键

表 overtime 字段 pour_days, e_id外键

以下为查询语句

语句1

SELECT employee.e_name,employee.e_entrydate,

SUM(IF(vacation.vacation_type='1',vacation_days,0)) AS NX ,

SUM(IF(vacation.vacation_type='2',vacation_days,0)) AS DX

FROM employee LEFT JOIN vacation

ON employee.e_id=vacation.e_id

GROUP BY employee.e_id

返回结果

e_name e_entrydate NX DX

小红 1998-10-12 64 10

小赵 1988-07-05 10 0

小王 1995-05-02 10 0

这个查询没有问题

语句2

SELECT employee.e_name,employee.e_entrydate,

SUM(overtime.pour_days) AS POUR

FROM employee

LEFT JOIN overtime

ON employee.e_id=overtime.e_id

GROUP BY employee.e_id

返回结果

e_name e_entrydate POUR

小红 1998-10-12 6

小赵 1988-07-05 2

小王 1995-05-02 2

这个查询没有问题

问题出现3个表联合查询上面,语句如下:

SELECT employee.e_name,employee.e_entrydate,

SUM(IF(vacation.vacation_type='1',vacation_days,0)) AS NX ,

SUM(IF(vacation.vacation_type='2',vacation_days,0)) AS DX ,

SUM(overtime.pour_days) AS POUR

FROM employee LEFT JOIN vacation

ON employee.e_id=vacation.e_id

LEFT JOIN overtime

ON employee.e_id=overtime.e_id

GROUP BY employee.e_id

e_name,e_entrydate,NX,DX,POUR

小红 1998-10-12 192 30 42

小赵 1988-07-05 10 0 2

小王 1995-05-02 10 0 2

第三个查询的第一行数值和以前不一样了,不知道问题出在哪,单表查询,两个表联合查询都没有问题,只是如果3个表一起的话,这个数值就不对,请教高手!

展开

mysql 三表left join_mysql left join 3表查询问题相关推荐

  1. mysql 三表inner join_MySql的join(连接)查询 (三表 left join 写法)

    1.内连接:将两个表中存在连结关系的字段符合连接条件的记录形成记录集 Select A.name,B.name from A inner join B on A.id=B.id和 Select A.n ...

  2. MySQL从入门到精通:多表查询的灵活运用_02

    我是 ABin-阿斌:写一生代码,创一世佳话,筑一揽芳华. 如果小伙伴们觉得我的文章有点 feel ,那就点个赞再走哦. 上一篇:MySQL从入门到精通:基本语法介绍与使用_01 下一篇:MySQL从 ...

  3. Mysql数据库基本操作(六)多表查询-内连接查询,外连接查询

    数据准备 use mydb3 ; --创建部门表 create table if not exists dept3 ( deptno varchar (20) primary key , --部门号 ...

  4. 用php进行联查,Thinkphp使用join联表查询的方法

    本篇文章介绍了Thinkphp使用join联表查询的方法,具有一定的参考价值,希望对各位学习thinkphp的朋友有帮助! Thinkphp使用join联表查询的方法 多表联查:$user = M(' ...

  5. Mysql数据库基本操作(七)多表查询-子查询,表自身关联查询

    多表查询还有前面的两块内容--内连接查询,外连接查询,希望看到这篇博客的朋友先去看看我的"Mysql数据库"专栏中Mysql数据库基本操作(六)多表查询-内连接,外连接这一章博客, ...

  6. php tp5的联表查询,Thinkphp使用join联表查询的方法

    本篇文章介绍了Thinkphp使用join联表查询的方法,具有一定的参考价值,希望对各位学习thinkphp的朋友有帮助! Thinkphp使用join联表查询的方法 多表联查:$user = M(' ...

  7. 三表左连接(LEFT JOIN) — 两表之间的关系

    三表左连接(LEFT JOIN) 问题:   最近遇到需求多表连接,要求A表所有数据均展示,B表和C表关联A表,若A表有的B,C表没有则展示为null,由此引发以下问题: A表作为基表,先关联B表,关 ...

  8. 小汤学编程之MySQL(三)——约束、多表查询、事务和数据库其他操作

    一.约束 1.主键约束     2.自动增长     3.非空约束     4.唯一约束     5.默认约束     6.外键约束     7.级联删除和级联更新     8.null删除和null ...

  9. 一、TCL事务控制语言 二、MySQL中的约束 三、多表查询(重点) 四、用户的创建和授权 五、MySQL中的索引...

    一.TCL事务控制语言 ###<1>事务的概念 事务是访问并可能更新数据库中各种数据项的执行单元. 事务是一条SQL语句,一组SQL语句,或者整个程序. 事务是恢复和并发控制的基本单位. ...

最新文章

  1. python官网怎么改中文-如何配置pycharm为中文?
  2. 【NLP】Github标星7.7k+:常见NLP模型的PyTorch代码实现
  3. 任务调度之Quartz2
  4. pip install python -32_pip安装python模块方法
  5. 工艺路线和工序有差别吗_智能制造、数字化车间、数字化企业需要结构化工艺吗?...
  6. Attribute “singleton” must be declared for element type “bean”.
  7. java 确定对象的引用_JVM学习笔记之了解对象存活判断和4种引用【三】
  8. linux学习笔记十一(LVM基础)
  9. 本表收录的字符的Unicode编码范围为19968至40869
  10. Android 节日短信送祝福(功能篇:2-短信历史记录Fragment的编写)
  11. 【CC2530入门教程-01】CC2530微控制器开发入门基础
  12. 《人工智能赋能数字水务》白皮书来了!
  13. Windows 10 KB3124200补丁无法安装的临时解决方案
  14. 怎么看接收灵敏度desense问题?
  15. 【Microsoft Azure 的1024种玩法】七.Azure云端搭建部署属于自己的维基百科
  16. 联想thinkbook14+2023款和2022款区别对比评测
  17. oracle 里sum(0),sum(1) ,sum(2) ,sum(num) over,count(*) over() ,coun(*),count(1)
  18. 【mysql】HikariCP不断打印WARN日志Failed to validate connection JDBC4Connectio Possibly consider using a shor
  19. 清华大学计算机与科学分数线,清华大学各地录取情况及调档线一览
  20. R语言学习笔记——高级篇:第十四章-主成分分析和因子分析

热门文章

  1. mysql多个外键删除设置_Mysql在删除集上使用多个外键创建表
  2. java混淆of_java – 是否有任何级别的混淆可以“欺骗”instanceof?
  3. mysql可视化一月多少钱_最便宜mysql可视化
  4. Flask 学习 (二) blueprint 示例
  5. hdu3094 A tree game
  6. BZOJ1492: [NOI2007]货币兑换Cash(CDQ分治,斜率优化动态规划)
  7. python并发运行
  8. 浅谈ztree节点的增加和获取
  9. xcode4.3.2 arc模式下导入非arc的文件 转
  10. Cent OS home下中文目录改成英文目录