关于将表中一个列的值以多个列的形式展示出来的问题?
比如有表的数据如下:      Student_Grade 
                               Name         Subject            Grade 
                               小明         语文                     100 
                               小明         数学                     98 
                               小明         英语                     95 
                               小陈         语文                     100 
                               小陈         数学                     100 
 现在要一条SQL语句,将数据展示成以下形式,请问如何写 
                                  小明         语文         100         数学   98      英语      95 
                                  小陈         语文         100         数学   100   英语      0   
------解决方案--------------------create table Student_Grade( 
  Name   varchar(40), 
  Subject    varchar(40),   
  Grade   varchar(40))       
 insert into Student_Grade 
 select  '小明 ', '语文 ', '100 ' from dual--           
 union 
 select  '小明 ', '数学 ', '98 ' from dual 
 union 
 select  '小明 ', '英语 ', '95 ' from dual 
 union 
 select  '小陈  ', '语文 ', '100 ' from dual 
 union 
 select  '小陈  ', '数学 ', '100 ' from dual     
 select name , '语文 ',sum(decode(Subject, '语文 ',Grade,0)) as 语文成绩, 
               '数学 ',sum(decode(Subject, '数学 ',Grade,0)) as 数学成绩, 
               '英语 ',sum(decode(Subject, '英语 ',Grade,0)) as 英语成绩  
              from  Student_Grade 
 group by name