我想选择q1.res
这将是FROM
子查询的结果选择结果:的子查询
(SELECT SUM(gwr.res1)/(COUNT(*)*1000) as 'res'
FROM process.gwr
WHERE started = 1 AND gwr.user2 = g.id AND gwr.loss = g.id) AS q1
的问题是,我想选择在子查询的g.id
但由于某种原因它不能访问它返回的错误信息:
[Err] 1054 - Unknown column 'g.id' in 'where clause'
它没有意义,因为g.id(grand.id
有id
科拉姆n)
SELECT
g.name, g.point, g.mx, q1.res
FROM
(SELECT SUM(gwr.res1)/(COUNT(*)*1000) as 'res'
FROM process.gwr
WHERE (started = 1) AND (gwr.user2 = g.id) AND (gwr.loss = g.id)) AS q1, grand g
LEFT JOIN process.users p ON (p.id = g.owner)
WHERE
p.name != ""
ORDER BY
g.point DESC,
g.mx DESC
LIMIT 5
问题在哪里?
是子查询执行正常还是你得到相同的错误? – Milen
@Milen Pavlov它不会执行,因为我试图使用主查询的g.id。 – Lucas