查询的多条结果(排序后),想把相邻的有共同特征的数据(某几列相同)合并,有好的方案吗?
例:查询结果是 AAABBA 6 条结果,合并后是 ABA 3 条结果
例:查询结果是 AAABBA 6 条结果,合并后是 ABA 3 条结果
1
awah Sep 18, 2018 via Android
为什么排序后还是 AAABBA?不应该是 AAAABB 吗?
|
2
reus Sep 18, 2018
用 postgresql
SELECT DISTINCT ON (列 1, 列 2) * FROM xxx 这样在遇到连续的列 1 和列 2 相等的行,会只取第一条 |
3
F281M6Dh8DXpD1g2 Sep 18, 2018
没看明白你到底要什么
|
6
kingfi OP @liprais 感谢回复,补充 2 点,1 是一楼问的,排序是按记录创建时间,举例的 A 和 B,是表示具有不同特征的记录(有某几列数据项的值相同)
|
7
randyzhao Sep 18, 2018
合并啥意思?值相加?拼字符串?
我楼上说的“有某几列数据项的值相同”,如果相同。。。为啥不挑一列取就完事了。。。 建议楼主把字段名公开出来,便于理解。 AAABBA ABA 这种表述方式太不易于别人理解问题了。 |
8
liuxu Sep 18, 2018
|
9
Leigg Sep 18, 2018 via iPhone
mysql 中的合并指的是 group 操作,使用 group 语句时,返回的字段要么是分组的字段,要么是聚合函数输出的字段。
|
10
mmdsun Sep 18, 2018 via Android
说的是多列去重吧。group by 就可以。
|