我想连接两个表,但我不能这样做,因为我想对列求和并获得两个日期之间的结果
第一个表名为: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')
";
在我的查询中,结果获取了没有过滤器的所有数量字段的总和..
我希望我已经很好地解释了我的问题。
谢谢/。
最佳答案
我还没有尝试过,但也许你可以这样尝试:
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/