我正在运行查询来分析Group_member_ID中某些用户的变体。 我想确定的是group_member_ids中的关键变体(例如2011年1月8日的Group1,2011年5月8日的Group5)。SQL:消除GROUP_CONCAT中重复的链条
我想出了这个命令:
select id,
CAST(group_concat(concat('[',group_member_id,'-',from_unixtime(obs_time),']') order by obs_time) as CHAR(10000) CHARACTER SET utf8)
from Table1
where id=1
结果:
IMEI组/日期
1[178-2011-06-13 18:58:31],[0-2011-06-13 19:20:56],[0-2011-06-17 17:21:57],[0-2011-06-19 16:53:29],[0-2011-06-22 16:41:11],[178-2011-09-30 16:43:11],[179-2011-10-01 18:43:11]
我怎样才能消除集团/日期[0-2011-06-17 17:21:57],[0-2011-06-19 16:53:29],[0-2011-06-22 16:41:11]
从这个查询,因为我已经确定了group_member_id = 0的第一条记录和其他记录不事对我来说... 换句话说,我希望我的最终结果是这样的:
IMEI组/日期
1[178-2011-06-13 18:58:31],[0-2011-06-13 19:20:56],[178-2011-09-30 16:43:11],[179-2011-10-01 18:43:11]
我卡住了。我正在考虑在我的group_concat中使用LIMIT,但显然这是不可能的。或者是?
感谢您的回答。
的子查询解决方案最适合您的需求,但是你没有给你的数据库的一个清晰的布局,所以我不能拿出你一个具体的SQL。 – vbence
有4个数据在前缀'[0-2011-06-13 19:20:56],[0-2011-06-17 17:21:57],[0-2011-06-19 16: 53:29],[0-2011-06-22 16:41:11]'。在你想删除的基础上只有3个(就像你在你的问题中提到的那样) – diEcho
是的,我认为是这样的...... 好吧,没必要给出一个清晰的布局,因为我只是从1个表中选择一个。 有4个数据0,我想只保留第一个,因为它会产生group_member_id变化(例如从178到0)。 低声说,最终结果应该是: 1 [178-2011-06-13 18:58:31],[178-2011-09-30 16:43:11],[179-2011-10-01 18 :43:11] – Rgonomike