1

次のMySqlクエリを実行しようとしていますが、実行すると、サブクエリの「q.object_id」が不明であることがわかります(o.idに変更すると、同じように表示されます)。

SELECT q.*, (SELECT c.title 
             FROM api_course c 
             LEFT OUTER JOIN api_object_parents op 
                 ON c.object_id = op.parent 
                     AND op.object_id = q.object_id) as parent_title
    FROM api_quiz q
    LEFT OUTER JOIN api_object o ON q.object_id = o.id
    WHERE o.type = 'Quiz'

基本的に、メインクエリで使用されているのと同じIDを取得し、それをサブクエリで使用する必要があります。

ありがとう!

4

1 に答える 1

4

これはあなたが探しているものですか?

SELECT  a.*, d.title
FROM    api_quiz a
            LEFT JOIN   api_object b
                on a.object_id = b.id
            LEFT JOIN   api_object_parents c
                ON c.parent = a.object_id
            LEFT JOIN   api_course d 
                ON c.object_id = c.parent
于 2012-08-21T04:12:08.047 に答える