mysql合并多条记录的单个字段去一条记录编辑

时间:2021-07-31 08:04:27

测试用表结构: 

复制代码代码如下:


-- 
-- 表的结构 `tet` 
-- 
CREATE TABLE IF NOT EXISTS `tet` ( 
`id` int(11) NOT NULL, 
`name` varchar(255) NOT NULL, 
`url` varchar(255) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
-- 
-- 转存表中的数据 `tet` 
-- 
INSERT INTO `tet` (`id`, `name`, `url`) VALUES 
(1, '百度 ', 'http://www.baidu.com '), 
(0, 'google ', 'http://www.google.com.hk '), 
(3, '400电话 ', '//www.zzvips.com '); 


方法一: 

复制代码代码如下:


SELECT GROUP_CONCAT ( name ) name 
FROM tet 
WHERE 1 = 1 
LIMIT 0 , 30 


结果: 
name 百度,google,400电话 
GROUP_CONCAT还可以用 SEPARATOR 关键词指定连接符,sql语句如下: 
SELECT GROUP_CONCAT ( url SEPARATOR " @ " ) url 
FROM tet 
WHERE 1 = 1 
LIMIT 0 , 30 
结果: 
http://www.baidu.com@http://www.google.com.hk@//www.zzvips.com 
方法二: 

复制代码代码如下:


SELECT GROUP_CONCAT ( name ) name 
FROM tet 
WHERE 1 = 1 
GROUP BY id 
LIMIT 0 , 30 


结果: 
google 
百度 
400电话