【问题标题】:Group different rows in one by combining strings通过组合字符串将不同的行组合为一个
【发布时间】:2010-10-13 17:09:46
【问题描述】:

我有一个这样的数据集:

Column1  Column2
   1       A
   1       B
   1       C
   2       D
   2       E
   2       F
   2       G
   3       H
   3       I 

我想把它合并成这样的东西:

Column1  Column2
   1       A, B, C
   2       D, E, F, G
   3       H, I

是否有可能在 SQLite 中以某种方式做到这一点?我虽然是 GROUP BY Column1,但我不知道如何将 Column2 数据合并到一个字符串中......

谢谢!

【问题讨论】:

  • GROUP_CONCAT 在安卓设备或模拟器中不起作用

标签: sqlite


【解决方案1】:
 SELECT Column1, group_concat(Column2) FROM Table GROUP BY Column1

如果您不想要单个 ',' 字符,group_concat 将使用可选的第二个参数(字符串)作为连接分隔符。

【讨论】:

  • @nida 的评论“GROUP_CONCAT 在 android 设备或模拟器中不起作用”属于这个答案而不是原始问题。但是,我只是在 Jelly Bean 设备(华为)和 Lollipop 设备(三星)上试了一下,效果很好。因此,也许有些版本的 Android 无法正常工作,但我还没有遇到过。奈达你能解释一下吗?你能解释一下为什么你认为它不起作用吗?
  • 3.17.0 版本的文档。将GROUP_CONCAT 放在默认可用的list of aggregate functions 中。那时候可能不是这样的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-25
  • 2015-02-05
  • 1970-01-01
  • 2011-04-30
  • 1970-01-01
相关资源
最近更新 更多