MySQL 嵌套 Select 并加入 Table

MySQL Nested Select with Joined Table

我假设有一种方法可以用 MySQL 做到这一点,但我在关系数据库方面的经验有限,所以我希望得到一些指导。

我有一个 usersregistrationsuser_registrations table。我想在我的 users table 上创建一个 SELECT 查询,该查询执行嵌套 select 计算该用户的 user_registrations

例如,我希望有这样的东西:

SELECT *, (SELECT COUNT() FROM user_registrations WHERE users.user_id = user_registrations.user_id) FROM users

我认为我对嵌套 selects 的理解不正确,我希望有人能在这里为我指明正确的方向。谢谢。

您需要将 select 来自 users table 的所有列分组并包含到您的 group by 子句中

SELECT u.id, u.name, COUNT(r.user_id) 
FROM users u
LEFT JOIN user_registrations r ON u.user_id = r.user_id 
GROUP BY u.id, u.name