SQL相關語法:自串串接,逗號應用

idtag
11,2,3,4
table a
tagname
1香蕉
2蘋果
3西瓜
4番茄
table b

如何select出 “香蕉,蘋果,西瓜,番茄" 呢

select GROUP_CONCAT(b.name order by field(b.id,a.tag) desc)
from a
left join tag t on FIND_IN_SET(t.id , a.tag)

*FIND_IN_SET:

在a.tag裡找t.id

參考資料:

  1. MySQL 為 GROUP BY 搭配的 GROUP_CONCAT() 功能

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s