我有一个带有架构的 sqlite 数据库
Articles
Id
Name
Tags
Id
Name
ArticlesTags
Id
ArticleId
TagId
Run Code Online (Sandbox Code Playgroud)
我正在尝试查询 Articles.Name 和标签列表。基本上我想要的是:
Name1, (tag1,tag2,tag3)
Name2, (tag3,tag2)
Run Code Online (Sandbox Code Playgroud)
这可能吗?我缺乏语言来解释我真正想做的事情,它叫什么?
我发现将多行中的列合并为单行,但它似乎仅限于 SQLServer 和内置 xml 功能的使用。
您可以使用该GROUP_CONCAT()
功能:
SELECT a.Name AS ArticleName
, GROUP_CONCAT(t.Name) AS TagList
FROM Articles AS a
LEFT JOIN ArticlesTags AS at
ON at.ArticleId = a.Id
LEFT JOIN Tags AS t
ON t.Id = at.TagId
GROUP BY a.Id, a.Name ;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16479 次 |
最近记录: |