mysql - 如何连接三个不同的表,其中一列是每个组件的总和?

标签 mysql sql

我有三个表:

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/

相关文章:

MySql + Qt 5.8 : "Incorrect string value" Statement Containing Degree Symbol

php - Laravel 5 迁移出错

php - mysql 查询中的多个 PHP 值 - 如何分离多个选项来查询数据库

mysql - 基于现有值随机化主键

php - 使用 PHP 和 MySQL 单击复选框时启用保存到数据库

php - MySQL数据库xampp

php - 如何拆分和求和并比较 mysql 中的条件?

Mysql 左连接速度很慢

mysql - 给出三个表之间的匹配 SQL

SQL 选择不同列和最新日期