mysql - 2表列出错误在哪里(帮助)
问题描述
选择 * 从 (选择 paymentTop,salesTop, t1.id, t1.sno, t1.fadi, t1.sal_date, t2.pno, t2.pay_date 从 ( 选择 id,sno,fadi,sal_date, SUM(sales) AS salesTop 从表 1 其中 id='11' 按 sno 分组 ) 作为 t1 左连接 ( 选择 id、pno、fadi、pay_date SUM(payment) AS paymentTop 从表 2 其中 id='11' 按 pno 分组 ) 作为 t2 开启 t1.id = t2.id ) 作为 t3 按 sno、pno 分组 ORDER BY sal_date, pay_date
t1(表 1) t2(表 2) +--------------------------+ +---------- ---------------------------------------------+ | 编号 | 销售日期 | 没有 | 销售 | | 编号 | 付款日期 | 没有 | 付款 | +--------------------------+ +---------- ---------------------------------------------+ | 11 | 20/02/2018 | 006089 | 160.80| | 11 | 15/03/2018 | 01815 | 93.85 | +--------------------------+ +---------- ---------------------------------------------+ | 11 | 2018 年 13 月 3 日 | 008834 | 219.60| | 11 | 25/03/2018 | 07734 | 350,70| +--------------------------+ +---------- ---------------------------------------------+ | 11 | 2018 年 13 月 3 日 | 008834 | 143.81| +--------------------------------------------------+ | 11 | 21/03/2018 | 010257 | 51.00| +--------------------------------------------------+ | 11 | 21/03/2018 | 010257 | 553.21| +--------------------------------------------------+ 我想要的输出 +------------------------------------------------+ | 编号 | 日期 | 没有 | 销售 | 付款 | +------------------------------------------------+ | 编号 |20/02/2018 | 006089 | 160.80| | +------------------------------------------------+ | 编号 |13/03/2018 | 008834 | 363.41| | +------------------------------------------------+ | 编号 |15/03/2018 | 01815 | | 93.85 | +------------------------------------------------+ | 编号 |21/03/2018 | 010257 | 604.21| | +------------------------------------------------+ | 编号 |25/03/2018 | 07734 | | 350,70 | +------------------------------------------------+ 查询输出 +--------------------------------------------------------+ | 日期 | 没有 | 销售 | 付款 | +--------------------------------------------------------+ |20/02/2018 |006089 | 160.80| 93.85 | +--------------------------------------------------------+ |20/02/2018 |07734 | 160.80| 350,70 | +--------------------------------------------------------+ |13/03/2018 |008834 | 219.60| 93.85 | +--------------------------------------------------------+ |15/03/2018 |07734 | 219.60| 350,70 | +--------------------------------------------------------+ |21/03/2018 |010257 | 553.21| 93.85 | +--------------------------------------------------------+ |25/03/2018 |07734 | 553.21| 350,70 | +--------------------------------------------------------+
解决方案
尝试两个表之间的左连接
select t1.id ,t1.sal_date,t1.no,t1.sales,t2.payment
left join t2
on t1.id=t2.id
and t1.no=t2.no
推荐阅读
- php - 如何使用“新的 MongoDB\Driver\Manager”驱动程序在 php 中获取集合 {Mongodb} 的列表
- algorithm - 什么是最有效的通用 sin(x) 算法,它的效率如何?
- c# - 如何检查我的电脑是否退出睡眠模式
- time-complexity - while循环内嵌套for循环的时间复杂度
- java - 通过反射使用方法时没有此类方法异常
- java - 过滤List中的对象排列
- >> 使用 Java 8
- sql - 使用 R 对两列进行分组并计算不同的值
- javascript - 远程自动完成功能不起作用 Angucomplete Alt
- c# - 排除使用实体框架获取数据的列
- kubernetes - 为 kubernetes 中的应用程序定义一个 url