我想在这两个表中搜索cid 23的所有记录
总计是table1-cid:23& w_id:1 + 2->(500 + 300), 高级是table1-cid:23& w_id:1 + 2(100 + 100)+表2-w_id:1 + 2(100 + 100 + 100 + 150) 待定是Total-Advance
尝试使用以下查询显示pic中的最后一张表,但没有运气。任何帮助将不胜感激。
“SELECT E.cid,SUM(E.total)为Total,SUM(E.advance)为Advance,(SUM(E.total)-SUM(E.advance) - SUM(R.advance))as有待 FROM table1 AS E. LEFT JOIN table2 R ON E.w_id = R.w_id WHERE(E.cid = 23)“;
答案 0 :(得分:1)
这不是我做过的最好的查询,但我得到了你想要的结果:
wwtest1 = table-1,wwtest2 = table 2。
SELECT w1.cid AS cid,
(SELECT SUM(total) FROM wwtest WHERE cid = 23) AS total,
((SELECT SUM(advance) FROM wwtest WHERE cid = 23) + (SELECT SUM(advance) FROM wwtest2)) AS advance,
((SELECT SUM(total) FROM wwtest WHERE cid = 23) - ((SELECT SUM(advance) FROM wwtest WHERE cid = 23) + (SELECT SUM(advance) FROM wwtest2))) AS pending
FROM wwtest w1
WHERE w1.cid = 23 GROUP BY w1.cid;