【发布时间】:2013-07-09 09:38:04
【问题描述】:
我有以下有效的查询...但我需要一些更改:
SELECT
p.pid,
p.name,
GROUP_CONCAT( gC.leaguepoints ORDER BY leaguepoints DESC ) AS leaguepoints
FROM
golf_player p
LEFT JOIN
golf_card gC ON
p.pid = gC.pid
GROUP BY
p.pid
ORDER BY
p.name
DESC
我真正想要的是返回另一个名为 totalleaguepoints 的属性,它是我表中最近 20 个联赛积分的总和。
如何为 group_concat 添加限制?
可能是这样的?
SELECT
p.pid,
p.name,
GROUP_CONCAT( gC.leaguepoints ORDER BY leaguepoints DESC ) AS leaguepoints,
SUM(
SELECT
gC2.leaguepoints
FROM
golf_card gC2
WHERE
gC2.pid = p.pid
ORDER BY
leaguepoints
DESC
LIMIT 20
) AS totalleaguepoints
FROM
golf_player p
LEFT JOIN
golf_card gC ON
p.pid = gC.pid
GROUP BY
p.pid
ORDER BY
p.name
DESC
P.S,上面的查询没有运行
【问题讨论】:
-
How do I add a limit to a group_concat?你没有在 where 子句中创建过滤器。
标签: php mysql limit group-concat