创建视图

xiaoxiao2021-02-28  7

竖行变横行的查询

SELECT stuName, 

SUM(CASE project WHEN '语文' THEN stuScore ELSE 0 END) AS 语文, SUM(CASE project WHEN '数学' THEN stuScore ELSE 0 END) AS 数学, SUM(CASE project WHEN '英语' THEN stuScore ELSE 0 END) AS 英语 FROM `t_score` GROUP BY stuName ; ====================================================== -- CREATE [OR REPLACE] [FORCE] VIEW view_name         AS subquery         [WITH CHECK OPTION ]         [WITH READ ONLY]     OR REPLACE :若所创建的试图已经存在,ORACLE 自动重建该视图;     FORCE :不管基表是否存在 ORACLE 都会自动创建该视图;     subquery :一条完整的 SELECT 语句,可以在该语句中定义别名;     WITH CHECK OPTION :插入或修改的数据行必须满足视图定义的约束;     WITH READ ONLY :该视图上不能进行任何 DML 操作。 =========================================================== 创建一个如后面查询的结果的视图: CREATE VIEW  score_table AS ( SELECT stuName,  SUM(CASE project WHEN '语文' THEN stuScore ELSE 0 END) AS 语文, SUM(CASE project WHEN '数学' THEN stuScore ELSE 0 END) AS 数学, SUM(CASE project WHEN '英语' THEN stuScore ELSE 0 END) AS 英语 FROM `t_score` GROUP BY stuName  ) SELECT * FROM score_table DROP VIEW score_table 
转载请注明原文地址: https://www.6miu.com/read-1900254.html

最新回复(0)