我想加入两个表,但我不能这样做,因为我想对列求和并获得两个日期之间的结果
第一个表名为:vip_allotment_details
allotment_id qty
2 3
2 5
1 2
1 4
第二个表名称:vip_allotment
id date_from date_to
1 2017-10-1 2017-10-5
2 2017-10-6 2017-10-10
我想从查询中得到什么给我这个结果
id qty date_from date_to
1 6 2017-10-1 2017-10-5
2 8 2017-10-6 2017-10-10
我将解释结果:
第一个allotment_id字段与第二个表中的id字段链接,我想要的结果是我们可以通过date_from和date_to之间的两个字段(id,allotment_id)进行数量的总和
这是我的尝试:
$query1 = "
SELECT SUM(qyt) as total
FROM vip_allotment_details
where allotment_id IN ( SELECT id from vip_allotment where date_from >= '$date_1' AND date_to <= '$date_2')
";
在我的查询中,结果获取所有qty字段的总和,而没有过滤器..
我希望我已经很好地解释了我的问题。
谢谢/。
最佳答案
我还没有尝试,但是也许您可以这样尝试:
SELECT a.id AS id, SUM(qyt) AS qty, date_from, date_to
FROM vip_allotment AS a
LEFT JOIN vip_allotment_details AS b on b.allotment_id = a.id
WHERE a.date_from >= '{thedatestart}' AND a.date_to <= '{thedateend}'
GROUP BY a.id
ORDER BY a.id ASC;
关于php - 结合两个表并求和mysql,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46757718/