我已经尝试了许多查询没有正确的结果
我的目标是根据userid出席分支机构以及同一分支机构当天出席的用户数量获得用户佣金;
希望有这样的结果
<表类>
日期
totalAtt
数量
tbody><<tr>2022-05-1 1 60 & lt;——(50 + 20)——(5 + 5) 2022-05-2 2 50 & lt;——(50 + 20)——(5 + 15) 2022-05-3 3 80 & lt; - (80 + 30) (25 + 5) 2022-05-4 1 & lt; 200 - (100 + 200) (50 + 50)是branchid = 5 表类>
似乎您想按日期计数att,但要按指定用户的金额计数。所以有条件地聚合
SELECT
a.date,
COUNT(DISTINCT a.USERID) AS totalatt ,
SUM(CASE WHEN USERID = 20 THEN (m.ca+m.ce)-(m.car+m.cer) END) AS amount
FROM att a
LEFT JOIN money m ON a.date = m.date AND a.branchid = m.branchid
GROUP BY a.date HAVING AMOUNT > 0
ORDER BY a.date;