sql转换表结构

xiaoxiao2026-08-21  10

现有如下表结构和数据:(表名为course)

name      subject   grade

张三          语文        20

张三          数学        30

张三          英语        60

李四          语文        40

李四          数学        90

李四          英语        100

如何用SQL语句查询出如下结构的结果:

姓名    语文     数学     英语

张三     20       30       60

李四     40       90       100

答案:

select distinct t.name 姓名,t1.grade 语文,t2.grade 数学,t3.grade 英语

     from course t,

         (select c.name,c.grade from course c where c.subject='语文')t1,

         (select c.name,c.grade from course c where c.subject='数学')t2,

         (select c.name,c.grade from course c where c.subject='英语')t3

     where t.name=t1.name

        and t.name = t2.name

        and t.name = t3.name

 

 

 

 

相关资源:SQL学习笔记——表结构转换查询
转载请注明原文地址: https://www.6miu.com/read-5051571.html

最新回复(0)