涉及到动态生成字段的问题,用一条SQL我不会不过有个笨办法:SELECT STU_NAME,
SUM(L001) AS "语文(分数)",
SUM(L002) AS "数学(分数)",
SUM(L003) AS "英语(分数)",
SUM(L004) AS "物理(分数)",
SUM(L005) AS "化学(分数)"
FROM (
SELECT A.STU_NAME,DECODE(C.LES_ID,'L001',C.STORE,0) AS L001,
DECODE(C.LES_ID,'L002',C.STORE,0) AS L002,
DECODE(C.LES_ID,'L003',C.STORE,0) AS L003,
DECODE(C.LES_ID,'L004',C.STORE,0) AS L004,
DECODE(C.LES_ID,'L005',C.STORE,0) AS L005
FROM 学生表 A
INNER JOIN 分数表 C ON (A.STU_ID=C.STU_ID)
) GROUP BY STU_NAME
/
SUM(L001) AS "语文(分数)",
SUM(L002) AS "数学(分数)",
SUM(L003) AS "英语(分数)",
SUM(L004) AS "物理(分数)",
SUM(L005) AS "化学(分数)"
FROM (
SELECT A.STU_NAME,DECODE(C.LES_ID,'L001',C.STORE,0) AS L001,
DECODE(C.LES_ID,'L002',C.STORE,0) AS L002,
DECODE(C.LES_ID,'L003',C.STORE,0) AS L003,
DECODE(C.LES_ID,'L004',C.STORE,0) AS L004,
DECODE(C.LES_ID,'L005',C.STORE,0) AS L005
FROM 学生表 A
INNER JOIN 分数表 C ON (A.STU_ID=C.STU_ID)
) GROUP BY STU_NAME
/
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货