mysql-求助,联合查询多次求和同一张表同一字段,求和结果总是不对
Jun 06, 2016 am 09:45 AMmysqlphp
SELECT so.*,t1.时间 AS 最后记账时间,IFNULL(SUM(t1.金额),0) AS 总金额,IFNULL(SUM(金额),0) AS 定单金额,IFNULL(SUM(t3.金额),0) AS 销售单金额'
.' FROM 订单表 AS so LEFT JOIN '
.'(SELECT ID,金额,编号,时间 FROM 流水表 WHERE 类型 = 1 order by datatime desc)t1 ON ((t1.编号 = so.订单号) OR (t1.编号 = so.定单号)) LEFT JOIN '
//.'(SELECT ID,金额,编号 FROM 流水表 WHERE 类型 = 1)t2 ON t2.编号 = so.定单号 LEFT JOIN '
.'流水表 AS t2 ON t2.编号 = so.定单号 AND t2.类型 = 1 LEFT JOIN '
.'(SELECT 金额,编号 FROM 流水表 WHERE 类型 = 1 AND 科目 = "销售单定金")t3 ON t3.编号 = so.订单
我要根据订单里面的订单号或者定单号,多次求和得到订单总金额、定单金额及销售单金额,所有金额都记录在流水表的金额中,通过类型及编号来区分,我试了很久,销售金额或者定定定单金额求和总是会有误差,总是会多出二三倍,我估计应该是三个查询会把把的有查询结果汇总。
求高手指点这个联合查询应该怎么写。
为了方便大家读懂,我已经把表名及字段名等都换成了中文。
等不到回答,自己已经搞定了。

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?
