背景infの最初の部分:これは、オブジェクトを保持するcmsについてです-オブジェクトの関係と単一のテーブルでのそれらの並べ替え、列はobject_id、parent_id、および並べ替え順序です
2番目のピースには、いくつかの結合を含むクエリがあり、2つのパラメーターで並べ替えたいと思います。1つはオブジェクト自体の並べ替えで、2つ目はその親の並べ替え順序です。
私が今持っているクエリは次のとおりです。
SELECT obj_asset.*, object.headline AS title, oo.sort_order AS sort, op.sort_order FROM obj_asset
JOIN object ON obj_asset.object_id = object.object_id
JOIN object_object AS oo on obj_asset.object_id = oo.object_id
JOIN (SELECT sort_order from object_object WHERE object_id = (SELECT parent_id from object_object WHERE object_id = obj_asset.object_id )) AS op ON obj_asset.object_id = oo.object_id
WHERE obj_asset.profile_id = 140 AND obj_asset.rsvp_enabled = 1 AND object.is_published = 1 ORDER BY sort DESC;
そして、それは機能しません。ただし、これは正常に機能します。
SELECT obj_asset.*, object.headline AS title, oo.sort_order AS sort, op.sort_order FROM obj_asset
JOIN object ON obj_asset.object_id = object.object_id
JOIN object_object AS oo on obj_asset.object_id = oo.object_id
JOIN (SELECT sort_order from object_object WHERE object_id = (SELECT parent_id from object_object WHERE object_id = 11111 )) AS op ON obj_asset.object_id = oo.object_id
WHERE obj_asset.profile_id = 140 AND obj_asset.rsvp_enabled = 1 AND object.is_published = 1 ORDER BY sort DESC;
私が得るエラーは次のとおりです。
1054-'where句'の不明な列'obj_asset.object_id'
どうすれば動作させることができますか?
ありがとう!
編集:親がクエリにソートすることを含める別の方法を思い付くことができれば、問題を回避することができます。そのような方法はありますか?