我有以下查询

$queryrs12c = "SELECT COUNT(*) total, SUM(goals) as sumgoals, SUM(assists) as sumassists, SUM(minutes) as summinutes FROM `player` WHERE season='12' AND gametype='club' ";

$queryrs11c = "SELECT COUNT(*) total, SUM(goals) as sumgoals, SUM(assists) as sumassists, SUM(minutes) as summinutes FROM `player` WHERE season='11' AND gametype='club' ";

$queryrs10c = "SELECT COUNT(*) total, SUM(goals) as sumgoals, SUM(assists) as sumassists, SUM(minutes) as summinutes FROM `player` WHERE season='10' AND gametype='club' ";


等等

我有这个查询12遍1-12次

然后,我通过循环获取每个查询的结果,以生成12个数据表。

有没有办法组合所有12个查询,但仍然保留生成12个数据表的能力?

(12个查询似乎并不多,但我还有其他类似的查询集,一个查询有10个查询,一组查询有12个查询,一组查询有13个查询,我必须循环遍历太多变量。)

最佳答案

您应该使用GROUP BY子句,该子句将允许您对分组所依据的列中的每个变体使用诸如SUM()之类的聚合函数。就您而言,这可能是这样的:

SELECT
    season,
    COUNT(*) AS total,
    SUM(goals) AS sumgoals,
    SUM(assists) AS sumassists,
    SUM(minutes) AS summinutes
FROM `player`
WHERE gametype='club'
GROUP BY season
ORDER BY season DESC /* or ASC whichever you wish */

关于php - 有没有一种方法可以将各种MYSQL查询与多个WHERE子句结合在一起?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22366635/

10-12 16:03
查看更多