创建家电表如下:
CREATE TABLE elecct ( pid int, prop_name VARCHAR(15),vid int, NAME VARCHAR(20));
插入数据表如下
insert into elecct(pid,prop_name,vid,NAME) values(11,'手机',3232483,'IPone')
insert into elecct(pid,prop_name,vid,NAME) values(11,'手机',3232484,'联想') insert into elecct(pid,prop_name,vid,NAME) values(12,'电脑',3232486,'DELL')
insert into elecct(pid,prop_name,vid,NAME) values(12,'电脑',3232487,'宏基') insert into elecct(pid,prop_name,vid,NAME) values(13,'游戏机',3232490,'PS2')
insert into elecct(pid,prop_name,vid,NAME) values(13,'游戏机',3232489,'XBOX')
现在想用sql语句实现如下效果 ,请高手指点
11, 手机,((3232483,IPone),(3232484,联想))
12 ,电脑,((232486,DELL),(3232487,宏基'))
13 ,游戏机,((3232490,PS2),(3232489,XBOX))
表现形式为数组或者 为两列也可以,比如 11, 手机,(3232483,IPone),(3232484,联想)
12 ,电脑,(232486,DELL),(3232487,宏基')
13 ,游戏机,(3232490,PS2),(3232489,XBOX)
其中,手机,电脑,游戏机是不固定的,有可能会出现电风扇,我的目的就是把同一个类别的,合并到一行中去,
比如把都为手机的品牌合并到一行,把电脑的同一个品牌合并到一行
CREATE TABLE elecct ( pid int, prop_name VARCHAR(15),vid int, NAME VARCHAR(20));
插入数据表如下
insert into elecct(pid,prop_name,vid,NAME) values(11,'手机',3232483,'IPone')
insert into elecct(pid,prop_name,vid,NAME) values(11,'手机',3232484,'联想') insert into elecct(pid,prop_name,vid,NAME) values(12,'电脑',3232486,'DELL')
insert into elecct(pid,prop_name,vid,NAME) values(12,'电脑',3232487,'宏基') insert into elecct(pid,prop_name,vid,NAME) values(13,'游戏机',3232490,'PS2')
insert into elecct(pid,prop_name,vid,NAME) values(13,'游戏机',3232489,'XBOX')
现在想用sql语句实现如下效果 ,请高手指点
11, 手机,((3232483,IPone),(3232484,联想))
12 ,电脑,((232486,DELL),(3232487,宏基'))
13 ,游戏机,((3232490,PS2),(3232489,XBOX))
表现形式为数组或者 为两列也可以,比如 11, 手机,(3232483,IPone),(3232484,联想)
12 ,电脑,(232486,DELL),(3232487,宏基')
13 ,游戏机,(3232490,PS2),(3232489,XBOX)
其中,手机,电脑,游戏机是不固定的,有可能会出现电风扇,我的目的就是把同一个类别的,合并到一行中去,
比如把都为手机的品牌合并到一行,把电脑的同一个品牌合并到一行
from elecct
group by pid,prop_name
mysql> select pid,prop_name,group_concat(concat('(',vid,',',name,')')) from
-> elecct group by pid,prop_name;
+------+-----------+--------------------------------------------+
| pid | prop_name | group_concat(concat('(',vid,',',name,')')) |
+------+-----------+--------------------------------------------+
| 11 | 手机 | (3232483,IPone),(3232484,鑱旀兂) |
| 12 | 电脑 | (3232486,DELL),(3232487,瀹忓熀) |
| 13 | 游戏机 | (3232490,PS2),(3232489,XBOX) |
+------+-----------+--------------------------------------------+
3 rows in set (0.00 sec)mysql>