これら2つのクエリを結合する方法を考え出そうと、何時間も頭を悩ませてきました..
私の目標は、特定の基準に基づいて (会場から) 複数の会場行を返すことです...これが現在のクエリの動作です....
SELECT venues.id AS ven_id,
venues.venue_name,
venues.sub_category_id,
venues.score,
venues.lat,
venues.lng,
venues.short_description,
sub_categories.id,
sub_categories.sub_cat_name,
sub_categories.category_id,
categories.id,
categories.category_name,
((ACOS( SIN(51.44*PI()/180)*SIN(lat*PI()/180) + COS(51.44*PI()/180)*COS(lat*PI()/180)*COS((-2.60796 - lng)*PI()/180)) * 180/PI())*60 * 1.1515) AS dist
FROM venues,
sub_categories,
categories
WHERE
venues.sub_category_id = sub_categories.id
AND sub_categories.category_id = categories.id
HAVING
dist < 5
ORDER BY score DESC
LIMIT 0, 100
ただし、別のテーブル (venue_images) から取得した別のフィールド (サムネイル) をこのクエリに含める必要があります。アイデアは、関連する場所と順序に基づいて 1 つの画像行を抽出することです。ただし、抽出する必要があるのは 1 つの画像だけです。だからLIMIT 1。
基本的に、次のクエリを挿入する必要があります。
SELECT
venue_images.thumb_image_filename,
venue_images.image_venue_id,
venue_images.image_order
FROM venue_images
WHERE venue_images.image_venue_id = ven_id //id from above query
ORDER BY venue_images.image_order
LIMIT 1
最初のクエリで、この新しいフィールドに「サムネイル」というラベルを付けます。
どんな助けでも本当に感謝します。ありがとう!