[英]Select Distinct from table to sum values on another table
我有兩張桌子
table1 table2
numID|counts|date numID|net|tax|date
1 1 xy 1 2 1 xy
2 1 xy 2 2 1 xy
3 1 xy 3 2 1 xy
3 1 xy 4 1 1 xy
4 0 xy
因此,對於相同日期,numID和counts = 1的行,我需要對table2求和(凈額+稅額)。 我嘗試執行where子句,但numID 3將被添加兩次,但我只需要將其求和一次。 numID 4應該被省略,因為它的counts = 0。 我的選擇:
SELECT
SUM(`net`+`tax`)
FROM table1 AS d, `table2` AS c
WHERE d.date=c.date
AND d.numID=c.numID
AND `it_counts` = 1
這將numID兩次添加兩次,但應該為DISTINCT
。
嘗試使用相關的exists
查詢重寫此語句:
SELECT
SUM(`net`+`tax`)
FROM `table2` AS c
WHERE EXISTS (
SELECT 1 FROM table1 AS d
WHERE d.date=c.date
AND d.numID=c.numID
AND `it_counts` = 1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.