我可以通过多列的总和对mySQL数据库记录进行排序而不显示总和本身吗?

时间:2012-06-07 03:52:43

标签: php mysql sql-order-by sum

我有一个足球运动员及其统计数据库,其中前三个字段为VARCHAR,其余为INT。我想根据他们的统计数据的总和以DESC顺序显示记录但是我不想显示总和。

以下是输入数据库的一些示例数据:

Tim Tebow          NYJ         QB          315             2             62             1
Tom Brady          NE          QB          344             3             13             0
Tony Romo          DAL         QB          337             4             25             0

以及我希望如何显示(按照PASS_YDS + PASS_TDS + RUSH_YDS + RUSH_TDS之和的顺序):

Player        |   Team    |   Pos   |   PASS_YDS   |   PASS_TDS   |   RUSH_YDS   |   RUSH_TDS
-------------------------------------------------------------------------------------------------
Tim Tebow          NYJ         QB          315             2             62             1
Tony Romo          DAL         QB          337             4             25             0
Tom Brady          NE          QB          344             3             13             0

这是我用来从我的数据库中获取数据并将其显示在页面上的表中的查询,按PASS_YDS按降序排序(是的,我知道mysql_已被弃用 - 我将很快修改该应用程序但只需要让它以这种方式正常工作):

$result = mysql_query("SELECT Player, Team, Pass_Yds, Pass_TDs, Int_Thrown, Rush_Yds, Rush_TDs, Total_Fantasy_Pts FROM ff_projections WHERE Position = 'QB' ORDER BY Pass_Yds DESC;");

我需要做什么才能按照我想要的方式对其进行排序?

1 个答案:

答案 0 :(得分:2)

正如人们可能想象的那样:

SELECT   Player, Team, Pass_Yds, Pass_TDs, Int_Thrown, Rush_Yds, Rush_TDs
FROM     ff_projections
WHERE    Position = 'QB'
ORDER BY Pass_Yds + Pass_TDs + Rush_Yds + Rush_TDs DESC

但是,仅仅因为在选择列表中包含一个列并不意味着您的应用程序必须使用该列...