我有一张表如图
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'
 开满天机
开满天机 
					元芳怎么了
 随时随地看视频慕课网APP
随时随地看视频慕课网APP
相关分类