0

selectステートメントを作成しようとしていますが、機能させることができません。

私は3つのテーブルを持っています :places、、tagsplaces_tags

Places:
   - id
   - name

Tags:
   - id
   - name

Places_tags:
   - place_id
   - tag_id
   - order

場所を選択して、挿入された最初のタグに参加しようとしています(順序を使用)

        SELECT p。*、t.tag_idASタグ
        FROM `places` as p
        LEFT JOIN Places_tags t ON(t.place_id = p.id)
        p.idによるグループ化

それが私が今持っているものです。ORDER BYorderDESCのようなものを追加する必要があります...

私はそれを正しくやっていないと思います。

4

1 に答える 1

0

次のようなものが機能するはずです。

SELECT 
   p.name AS "place", 
   t.name AS "firstTag" 
FROM 
   places p 
   LEFT JOIN
   places_tags pt1 
      ON pt1.place_id = p.id
   LEFT JOIN
   places_tags pt2 
      ON pt2.place_id = p.id AND pt2.tag_id < pt1.tag_id
   LEFT JOIN 
   tags t 
      ON t.id = pt1.tag_id
WHERE
   pt2.tag_id IS NULL
于 2012-10-14T19:18:36.900 に答える