SQL: рефакторинг запроса GROUP_CONCAT

Моя конечная цель – генерировать ссылки тегов для сообщений в блогах, теги, относящиеся к сообщению.

В настоящее время мой запрос имеет GROUP_CONCAT который захватывает связанные теги, а значение столбца возвращающих tags – это что-то вроде:

«Бруклин, Манхэттен, Нью-Йорк»

из

 SELECT post.id, post.name, GROUP_CONCAT( tags.name order by tags.name ) AS tags FROM post LEFT JOIN tags_items ON post.id = tags_items.post LEFT JOIN tags ON tags_items.tag = tags.id 

С этой строкой, в моем серверном коде, я разбиваю ее запятой и перебираю, чтобы генерировать теги. Однако теперь мне нужно сделать эти ссылки, и мне нужно знать соответствующий идентификатор каждого из тегов, чтобы создать ссылку, например <a href="?tag=1">New York</a> . Моя структура HTML будет такой:

 <div class=post> <h2>Rakim Allah!</h2> <div class=tags> <a href="/tags/1">Brooklyn</a> <a href="/tags/2">Manhattan</a> <a href="/tags/3">New York</a> </div> </div> 

таблица tags :

 id name 1 Brooklyn 2 Manhattan 

таблица tags_items (нет pk):

 post tag 1 1 

Solutions Collecting From Web of "SQL: рефакторинг запроса GROUP_CONCAT"