关于数据库分组查询的问题

这是数据库的部分数据图片说明
我打算用group by 分组查询里某一条船的信息,SQL语句如下:
SELECT ShipName,GROUP_CONCAT(ID_DetectItem,',',Val_Detect) FROM DetectResult GROUP BY ShipName LIKE '%40119%';(每条船的船号是唯一的)
但是查询出来的结果却是这样
图片说明这是怎么回事,应该怎么修改呢?

2个回答

SELECT ShipName,GROUP_CONCAT(ID_DetectItem,',',Val_Detect) FROM DetectResult where ShipName LIKE '%40119%' GROUP BY ShipName

t1441332354
t1441332354 非常感谢
一年多之前 回复

SELECT ShipName,GROUP_CONCAT(ID_DetectItem,',',Val_Detect) FROM DetectResult GROUP BY ShipName LIKE '%40119%'
你那么写,是按照ShipName LIKE '%40119%' 分组(而不是ShipName),也就是Like的分一组,不Like的分到另一组。

 SELECT ShipName,GROUP_CONCAT(ID_DetectItem,',',Val_Detect) FROM DetectResult GROUP BY ShipName  where ShipName LIKE '%40119%'
caozhy
贵阳老马马善福专门编写代码的老马就是我! 回复t1441332354: 加个括号
一年多之前 回复
t1441332354
t1441332354 老师,这么运行会报错,好像group by必须放在最后面,我把where和group的位置对换才行
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!