您的位置:首页 > 数据库 > MySQL

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

2011-08-17 08:58 288 查看
mysql怎么合并多条记录的单个字段去一条记录,今天在网上找了一下,方法如下:

测试用表结构:

-- --------------------------------------------------------

--

-- 表的结构 `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电话', 'http://www.my400800.cn');

方法一:

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@http://www.my400800.cn
方法二:

SELECT GROUP_CONCAT ( name ) name

FROM tet

WHERE 1 = 1

GROUP BY id

LIMIT 0 , 30

结果:

google
百度
400电话
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: