【问题标题】:How to query this is MySQL?如何查询这是 MySQL?
【发布时间】:2014-11-20 17:08:23
【问题描述】:

匹配

ID| radiant_name | dire_name | radiant_win
1 |          LV  |       LGD | true 
2 |         LGD  |        LV | false
3 |          LV  |       LGD | false
4 |          LV  |       LGD | false
5 |         LGD  |        LV | false

所需的输出:D:

例如

Team "LV" wins 3.
Team "LGD" wins 2.

我试过了:

使用 Group by 和 SUM 但结果不同。

例如。查询:

SELECT SUM(IF(radiant_win = 1? 1, 0)) as LV, SUM(IF(radiant_win = 1? 0,1)) as LGD


例如。不想要的结果 ~_~ :

Team "LV" wins 1.
Team "LGD" wins 4.

【问题讨论】:

    标签: mysql sql laravel


    【解决方案1】:

    我相信这就是您正在寻找的,如果需要每个光芒四射的团队获胜:

    SELECT radiant_team_id, count(*) FROM yourtable GROUP BY radiant_team_id HAVING radiant_win = 'true';
    

    或者,如果您需要每个 radiant 团队的胜利,并且也需要每个 dire 团队的胜利,那么您可能想要使用 UNIONS,但我不明白您为什么要这样,因为您可以使用上面的查询找到。

    【讨论】:

    • 它不工作 ~_~ 。我想查看每支球队的获胜总和并确定谁是获胜者
    • “有子句”中的未知列“radiant_win”
    • 确保你有一个名为radiant_win的列,正如你在问题中提到的那样,检查拼写,你也通过改变表格中的列来改变你的问题,你必须坚持一个问题。
    【解决方案2】:

    这是你要找的吗?

    SELECT DISTINCT COUNT(radiant_team_id), radiant_team_id 
    FROM yourtablename
    WHERE radiant_win='true'
    

    【讨论】:

      猜你喜欢
      • 2017-05-31
      • 2013-07-21
      • 2011-09-13
      • 2020-11-21
      • 2010-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多