は、これらの2つのクエリを手に入れた照会:組み合わせるSQLは
select d1.field_id_41 program_code, d1.field_id_48 program_group_code, t1.title program_lookup, t2.title group_title,
t1.url_title program_url_title, t2.url_title program_group_url_title
from channel_titles t1
join channel_data d1 on t1.entry_id = d1.entry_id
join channel_data d2 on d1.field_id_48 = d2.field_id_47
join channel_titles t2 on t2.entry_id = d2.entry_id
where t1.channel_id = 26 and d1.field_id_41 != ''
order by d2.field_id_45 , d1.field_id_9
select ProgramCode, ProgramGroup, EventCode, FormalDate, LocCity, LocState, LocAddress, LocName, Price,
zl.latitude as LocLatitude, zl.longitude as LocLongitude
from course_events e
join channel_data d on e.ProgramCode = d.field_id_41
join channel_titles t on d.entry_id = t.entry_id
join zip_lat_long zl on zl.zip = e.LocZipCode
現在、最初のクエリがprogram_lookup、program_url_titlesとprogram_group_url_titlesと呼ばれる3つのJSONオブジェクトを移入するために使用されます。 次に、イベントと呼ばれるJSONオブジェクトに配置された2番目のクエリから返されたアイテムが反復され、結果の一部がイベントJSONオブジェクトのデータに基づいて参照キャッシュのアイテムとともにHTMLに表示されます。
html = html + hr + '<div class="course"><div class="col1' + tm10 + '"><h4>' + program_lookup[event['ProgramCode']] + '</h4></div>';
html = html + '<div class="col1"><b>' + event['LocCity'] + '</b><br/>' + '... <a href="/courses/' + program_group_url_titles[event['ProgramGroup']] + '/'+ program_url_titles[event['ProgramCode']]+ '/' + event['EventCode'] + '" target="_new">View Details</a></div><div class="col2">';
私は3つのルックアップオブジェクトを取り除くために1つのクエリにこれらを結合する必要があるが、それはこれをやって行く方法を実際に非常に効率的であるか、またはかどうか不明です。 これは、私のHTMLに表示される前に、このユーティリティ、http://jsonselect.orgを使用して基本的に項目をフィルタリングすることです。 私が必要とする理由は、他のすべてのアイテムの前に特定のアイテムを表示し、正しい順序でそれらを配置することをSQLで行うことができないようにする必要があるからです。
最初のクエリのデータは2番目のクエリのデータに依存するため、ユニオンは機能しません。 – MB34
とにかく助けてくれてありがとう。 – MB34