对于这个结果你可以 再求和:
CREATE OR REPLACE VIEW VIEW_NAME AS
select SELECT A.学生编号id,A.姓名name, sum(音乐),sum(美术),sum(体育) from
(
A.学生编号id,A.姓名name,
DECODE(BB.特长名称, '音乐', '1', '0') AS 音乐,
DECODE(BB.特长名称, '美术', '1', '0') AS 美术,
DECODE(BB.特长名称, '体育', '1', '0') AS 体育
FROM
A, (SELECT 学生编号id, 特长名称 FROM B GROUP BY 学生编号id, 特长名称) BB
WHERE
A.学生编号id = BB.学生编号id
)
group by A.学生编号id,A.姓名name
/
CREATE OR REPLACE VIEW VIEW_NAME AS
SELECT
A.学生编号id,A.姓名name,
DECODE(BB.特长名称, '音乐', '1', '0') AS 音乐,
DECODE(BB.特长名称, '美术', '1', '0') AS 美术,
DECODE(BB.特长名称, '体育', '1', '0') AS 体育
FROM
A, (SELECT 学生编号id, 特长名称 FROM B GROUP BY 学生编号id, 特长名称) BB
WHERE
A.学生编号id = BB.学生编号id
/