如何解决子查询按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_player1
和f_player2
,我想按DISTINCT
个玩家将查询分组
所以球员名单是:
SELECT DISTINCT f_player1 AS player
FROM results
UNION
SELECT DISTINCT f_player2 AS player
FROM results;
如何添加此条件,以便每个表别名(last8g
,last16g
)都适用于这些不同的玩家?
使用当前查询采样数据:
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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。