【发布时间】:2015-09-25 13:11:25
【问题描述】:
我正在尝试在 MySQL 数据库上设计一个视图,该数据库存储有关足球(足球)的信息。
我的目标是创建一个返回所有进球和得分手基本信息的视图。这是视图过去外观的简化版本:
SELECT P.Name AS Player,
P.TeamName AS Team,
(SELECT COUNT(*)
FROM Goals G
WHERE G.Scorer = P.playerID) AS TotalGoals
FROM Players P
到目前为止,一切正常。当我只想在WHERE 子句中指定的某个赛季内计算进球数时,问题就开始了,如下所示:
SELECT * FROM GoalsView WHERE Season = 1
并且它只自动返回 WHERE 子句中的赛季进球数,就好像子查询被自动编辑使其看起来像:
[...]
(SELECT COUNT(*)
FROM Goals G
WHERE G.Scorer = P.playerID
AND Season=1) AS TotalGoals
[...]
我希望我说清楚了。感谢您的帮助!
【问题讨论】: