1

如何SELECT在第三级子查询中使用顶级列?

我试过了,但它给出了:unknown column foo.id

SELECT foo.id,
       (
           SELECT SUM(bar.amount)
           FROM bar
           JOIN (
               SELECT DISTINCT ding.id
               FROM baz
               JOIN ding ON ding.baz_id = baz.id
               WHERE baz.foo_id = foo.id
           ) AS j ON j.id = bar.id
       ) AS amount
FROM foo
4

1 回答 1

2

试试 SELECT foo_id

FROM (
       SELECT SUM(bar.amount),j.foo_id
       FROM bar
       JOIN (
           SELECT DISTINCT ding.id,baz.foo_id
           FROM baz
           JOIN ding ON ding.baz_id = baz.id
       ) AS j ON j.id = bar.id
   ) AS amount;
于 2012-11-02T00:27:34.113 回答