我是靠谱客的博主 清秀跳跳糖,最近开发中收集的这篇文章主要介绍mysql怎么消除笛卡尔积_mysql左链接笛卡尔积如何避免?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我有一张表如图

id projectName pId cDate amount period contractNum ownerName archives

1  江夏区大桥   1  2017 1900000 1     001     A     1

2  江夏区大桥   1  2017 1500000 2     001     A     1

3  江夏区大桥   1  2018 1900000 1     001     A     1

4  其他区大桥   2  2018 1900000 1     002     B     2

5  北方区大桥   3  2016 1902451 1     003     C     3

6  北方区大桥   3  2016 1854695 2     003     C     3

7  江夏区大桥   1  2016 1500000 1     001     A     1

8  江夏区大桥   1    2016 1000000 1     001     A     1

我想查出年份大于2016的所有记录,每条记录要加上这个项目在2016年前的所有的付款金额的总和,这个sql语句怎么写?我写了一个但是只出了一条数据并且是错误的。

SELECT DATE_FORMAT(t.cDate,'%Y') AS YEAR,t.*,SUM(a.amount) FROM wlkgltz1 t

LEFT JOIN

(SELECT * FROM wlkgltz1 t WHERE DATE_FORMAT(t.cDate,'%Y')<='2016') a

ON

t.pId = a.pId

WHERE DATE_FORMAT(t.cDate,'%Y') > '2016'

最后

以上就是清秀跳跳糖为你收集整理的mysql怎么消除笛卡尔积_mysql左链接笛卡尔积如何避免?的全部内容,希望文章能够帮你解决mysql怎么消除笛卡尔积_mysql左链接笛卡尔积如何避免?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部