如何将一行数据分解成多行呢?
请问一下,如何将一行数据分解成多行呢?
如:
姓名 语文 数学 地理
-------------------------------
张三 80 70 60
用sql语句将其分解成
姓名 分数
-------------------------------
张三 80
张三 70
张三 60
请问有办法吗?求解呀~ 分不够另换新帐号给分~,帮帮忙,提提意见也行~~
------解决方案--------------------搜索一下行列转换相关问题,这个问题讨论得太多了
------解决方案--------------------姓名 语文 数学 地理
-------------------------------
张三 80 70 60
...这样有什么用,你得到的数据可以知道是那一个的?
select 姓名 ,语文 as 分数 union all
select 姓名 ,数学 as 分数 union all
select 姓名 ,地理 as 分数
------解决方案--------------------select 姓名 ,语文 as 分数, '语文 ' 科目 union all
select 姓名 ,数学 as 分数, '数学 ' union all
select 姓名 ,地理 as 分数, '地理 '
这样会好点的,加多一字段