我是一个MySQL清理程序,我在网上四处打听并检查了一下,我确定结果会很明显,但我对我认为非常非常简单的查询不起作用感到非常沮丧。就这样。请温柔一点。
基本上,在大型数据库中,有些列名包含“/”和“+”之类的数学运算符(不要问,这不是我的数据库,我对此无能为力)。以下是我的问题的“实质”(为了这个问题,我去掉了不相关的东西):

  SELECT PlayerId,
         Season,
         WPA/LI AS WPALI
    FROM tht.stats_batting_master
   WHERE Season = "2010"
     AND teamid > 0
     AND PA >= 502
GROUP BY playerid
ORDER BY WPALI DESC

当我运行这个命令时,它返回“field list”中的“Unknown column‘LI’”,因为它将WPA/LI中的“/”看作一个除号。就像我说的,我确信这很容易解决(必须给出这个数据库的使用量),但我还没有弄清楚如何解决。
提前谢谢你的帮助。

最佳答案

使用反勾号可以避免这种情况:

  SELECT PlayerId,
         Season,
         `WPA/LI` AS WPALI
    FROM tht.stats_batting_master
   WHERE Season = "2010"
     AND teamid > 0
     AND PA >= 502
GROUP BY playerid
ORDER BY WPALI DESC

关于sql - MySQL查询涉及包含数学运算符的列名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4665666/

10-13 00:55