子查询按DISTINCT列分组

问题描述

我有一个查询的简化的版本,如下所示:

SELECT
    count_last_8,goals_8,count_last_16,goals_16 
FROM (
    (
      SELECT
        COUNT(*) AS count_last_8,f_total_ftg AS goals_8
      FROM (
        SELECT * 
        FROM results 
        ORDER BY f_datetime LIMIT 8 
      ) AS X 
    ) last_8g,(
      SELECT
        COUNT(*) AS count_last_16,f_total_ftg AS goals_16
      FROM (
        SELECT * 
        FROM results 
        ORDER BY f_datetime LIMIT 16 
      ) AS X 
    ) last_16g
);

我在results表中也有2列-f_player1f_player2,我想按DISTINCT个玩家将查询分组

所以球员名单是:

SELECT DISTINCT f_player1 AS player 
FROM results 
UNION 
SELECT DISTINCT f_player2 AS player 
FROM results;

如何添加此条件,以便每个表别名(last8glast16g)都适用于这些不同的玩家?

使用当前查询采样数据:

count_last_8    |   goals_8    | count_last_16   |  goals_16
    8                 4                16              4

我想像这样:

  player  |   count_last_8    |   goals_8    | count_last_16   |  goals_16
    kray           2                 2                4              9
    peli           1                 3                3              7
    etc...

解决方法

这很难理解您的问题,使用真实的数据样本以及基于所提供样本的真实预期结果会容易得多。

但是,我尝试了一些方法,这可能是解决方案,或者可能会对您有所帮助:

a222 END,and this is STRING b2838 

SEE DEMO HERE

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...