【问题标题】:sqlite3 - Merge multiple rows as one row where id is samesqlite3 - 将多行合并为一行,其中 id 相同
【发布时间】:2015-11-08 19:35:49
【问题描述】:

我有一个问题:

在我的SQLite (sqlite3 on android) 数据库中,我有一个这样的表:

id  | text
---------------------
id1:
abcdhgjj

id1:
kjhjmnl

id1:
mnbvjgfh

id2:
lhghdb

id2:
ghduhjgf

我想去:

id  | text
---------------------
id1:
abcdhgjj
kjhjmnl
mnbvjgfh

id2:
lhghdb
ghduhjgf

我如何使用SQLite 查询来做到这一点??

有人知道如何进行这项工作吗?

谢谢!

【问题讨论】:

  • 我应该这么说,我想将文本字段与 ENTER 字符(多行文本)合并。
  • 有类似问题

标签: sqlite merge duplicates rows


【解决方案1】:

SQLite 支持group_concat(),你可以试试:

select id, group_concat(text, ' ') as text
from table t
group by id;

请注意,您无法控制连接的顺序。

编辑:

您应该可以直接在查询中输入换行符:

 SELECT id, group_concat(text, '') AS text
 FROM table t
 group by id;

【讨论】:

  • 谢谢戈登。我可以输入字符而不是''吗?如果你说是,输入字符是什么?
  • 这不起作用。请检查并回复
  • @NehemiahNarzary 。 . .这是一个相当古老的问题。如果您对您的数据有疑问,我建议您提出一个问题。
【解决方案2】:

你可以试试这个

SELECT id,
group_concat(text, '<br>') as text
FROM tablename 
GROUP BY I'd;

这对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    • 2013-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多