MySQL数据库将多条记录的单个字段合并成一条记录

MySQL数据库将多条记录的单个字段合并成一条记录的操作是本文
我们主要要介绍的内容,接下来就让我们一起来了解一下这部分内容吧。
 
测试用表结构:  www.2cto.com  
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电话', 'http://www.my400800.cn'); 
 
方法一:
 
SELECT GROUP_CONCAT ( name ) name  
FROM tet  
WHERE 11 = 1  
LIMIT 0 , 30 
 
结果:
 
name 百度,google,400电话。
 
GROUP_CONCAT还可以用SEPARATOR  关键词指定连接符,sql语句如下:
 
SELECT GROUP_CONCAT ( url SEPARATOR " @ " ) url  
FROM tet  
WHERE 11 = 1  
LIMIT 0 , 30 
 
结果:
 
http://www.baidu.com@http://www.google.com.hk@http://www.my400800.cn
 
方法二:
 
SELECT GROUP_CONCAT ( name ) name  
FROM tet  
WHERE 11 = 1  
GROUP BY id  
LIMIT 0 , 30 
 
结果:
 
google
 
百度  www.2cto.com  
 
400电话
1.测试语句:SELECT group_concat(town) FROM `players` group by town
 
结果去查找town中去查找哪些值是一样的,如果相等,就全部列出来,
以逗号分割进行列出,如下:
 
group_concat(town)
 
北京,北京
长沙
 
2.测试:SELECT group_concat( town )
FROM players
结果:
group_concat(town)
长沙,北京,北京,
 
上面可以证明,group_concat只有与group by语句同时使用才能产生效果
posted on 2015-12-01 11:42  caigan  阅读(3155)  评论(0编辑  收藏  举报