我有一个问题:
在我的sqlite(android上的sqlite3)数据库中,我有一个像这样的表:
idImp | cer | caus --------------------- id1 | 010 | D1 id1 | 010 | D2 id1 | 011 | D2 id1 | 011 | D3 id2 | 010 | D1 id2 | 010 | D2 id2 | 011 | D2 id2 | 011 | D4
而且我想去
idImp | Conc id1 | '010-D1-D2;011-D2-D3;' id2 | '010-D1-D2;011-D2-D4;'
使用sqlite有可能吗?有谁知道如何使这项工作?
谢谢!
编辑(SRY,结果表中有错误):
我需要的是一个SQL查询,它将字段“caus”和字段“cer”连接到由“idImp”分组的特定分隔符.
我在sqlite group_concat(X,Y)的文档中发现它可以在单列上工作,因为它为我服务,但我需要连接多个列,我不知道该怎么办…
解决方法
将值分为两个步骤:
SELECT idImp,group_concat(causConc,'') AS Conc FROM (SELECT idImp,cer || '-' || group_concat(caus,'-') || ';' AS causConc FROM MyTable GROUP BY idImp,cer) GROUP BY idImp