0

toxi スキーマに基づくタグ付けを持つサイトを構築しています。しかし、タグに基づいてリンク/ブックマークを取得するクエリを生成するのに苦労しています。「Toxi」を使用すると、リンク/ブックマーク テーブルにはタグ ID 情報が含まれず、その情報は tag_map に保存されます。特定の tag_id (tag_map 経由) に一致するリンクを表示できるクエリを作成する必要があります。誰かが私を正しい方向に向けることができますか?

 `links`

  `link_id` 
  `link_title`
  `link_owner_id`
  `link_url`
  `link_description` 
  `link_datecreated`


`tags`

  `tag_id` 
  `tag_title` 
  `tag_description` 
  `tag_owner_id`

 `tag_map`

  `map_id` 
  `map_link_id`
  `map_tag_id`
4

2 に答える 2

2
SELECT  l.*
FROM    tag_map tm
JOIN    links l
ON      l.link_id = tm.map_link_id
WHERE   tm.map_tag_id = @my_tag_id
于 2013-01-17T19:25:33.537 に答える
0

InnoDBエンジンを使用する場合、relation(タグにリンクするための関係)を使用しないことは適切な決定ではありません。

関係には常にデータの一貫性が含まれます

ただし、関係なしで選択する場合は、データの挿入にトランザクションまたはトリガーを使用できます。

次に、データを取得するために次のクエリを試してください


SELECT tag_map.map_id,tags.tag_title,links.link_title FROM tag_map
LEFT JOIN tags
ON tag_map.map_tag_id=tags.tag_id
LEFT JOIN links
ON tag_map.map_link_id=links.link_id
    
于 2013-01-17T21:02:37.473 に答える