繁体   English   中英

如何在同一查询中使用部分SQL查询?

[英]How to use part of sql query in the same query?

我有此查询从两个表中获取信息:

SELECT u.username, u.id,
           SUM(t.result = 1) AS winnings,
           SUM(t.result = 2) AS loses
    FROM users u 
    LEFT JOIN tahminler t ON u.id = t.user_id
    GROUP BY u.id

我想从另一个表中为每个用户获取comments_no 像这样的东西:

SELECT u.username, u.id,
           SUM(t.result = 1) AS winnings,
           SUM(t.result = 2) AS loses,
           f1.comments_no
    FROM users u 
    LEFT JOIN tahminler t ON u.id = t.user_id
    INNER JOIN (select count(distinct match_static_id) as comments_no,user_id from comments where user_id = "here is my problem")
    GROUP BY u.id

是否可以在where user_id = u.id下使用u.id的值。 简要地说,如何为我的查询中的每个用户获取comment_no。

在子查询中使用GROUP BY:

SELECT u.username, u.id,
           SUM(t.result = 1) AS winnings,
           SUM(t.result = 2) AS loses,
           f1.comments_no
    FROM users u 
    LEFT JOIN tahminler t ON u.id = t.user_id
    INNER JOIN (select user_id, count(distinct match_static_id) as comments_no from comments GROUP BY user_id) f1
    ON u.id = f1.user_id
    GROUP BY u.id

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM