我有三个表:
geo(geo_id, geo_city, \ldots)
person(person_id, geo_id, \ldots)
ticket(person_id, numbertickes,\ldots)
我怎样才能形成一个表格,其中列是geo_city和visit,其中visit是每个城市的门票数量之和。
SELECT * FROM `mytable` AS A
INNER JOIN `geo` AS B ON B.geo_id = A.geo_id
INNER JOIN `ticket` AS C ON C.CLI_ID = A.CLI_ID
WHERE B.geo_id IS NOT NULL
AND C.person_id IS NOT NULL;
我需要一个包含按城市分组的总和的列,例如SUM(numbertickes)
最佳答案
连接 3 个表,然后选择城市和 SUM(numbertickets)
。
SELECT g.geo_city, SUM(t.numbertickets) AS visits
FROM geo AS g
JOIN person AS p ON p.geo_id = g.geo_id
JOIN ticket AS t ON t.person_id = p.person_id
GROUP BY g.geo_id
关于mysql - 如何连接三个不同的表,其中一列是每个组件的总和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56158060/