我在SQLite中有一个包含一些数据的表 喜欢这个
Table id
1
2
3
4
5
6
7
我想要的是一个String,其中包含以分号(;
)字符分隔的所有ID,例如
1;2;3;4;5;6;7
我知道有小组连续 但我无法弄清楚如何用这个样本做到这一点。
还有另一个名为COALESCE的方法我发现here,但在SQLite中我们无法声明变量。
在SQLite中有没有办法做到这一点?
答案 0 :(得分:0)
您可以使用聚合函数group_concat(X,Y)
来实现它:
group_concat()函数返回一个字符串 X的所有非NULL值的串联。如果存在参数Y. 然后它被用作X实例之间的分隔符。逗号(",") 如果省略Y,则用作分隔符。的顺序 连接元素是任意的。
SELECT GROUP_CONCAT(id, ';') AS result
FROM tab_name
-- WHERE id < 10; -- if needed
如果您没有指定GROUP BY ...
条款,则所有记录都将被视为一个组。