admin管理员组文章数量:1530846
2023年12月13日发(作者:)
SQL中的casewhenthenelseend用法(数据库内容纵向变横向)
SQL中的case when then else end用法
当我们需要从数据源上 直接判断数据显示代表的含义的时候 ,就可以在SQL语句中使用 Case When这个函数了.
Case具有两种格式。简单Case函数和Case搜索函数。
简单函数
CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END
搜索函数
CASE WHEN [expr] THEN [result1]…ELSE [default] END
达梦数据库建表SQL
CREATE TABLE "TEST"."CJT"
(
"ID" INT NOT NULL,
"KC" VARCHAR(50),
"FS" INT,
"NAME" VARCHAR(50),
CLUSTER PRIMARY KEY("ID")) STORAGE(ON "TEST", CLUSTERBTR) ;
COMMENT ON TABLE "TEST"."CJT" IS '成绩表';
COMMENT ON COLUMN "TEST"."CJT"."ID" IS '主键';
COMMENT ON COLUMN "TEST"."CJT"."KC" IS '课程名称';
COMMENT ON COLUMN "TEST"."CJT"."FS" IS '分数';
COMMENT ON COLUMN "TEST"."CJT"."NAME" IS '姓名';
执行SQL
SELECT
NAME AS "姓名",
(CASE KC WHEN '语文' THEN FS ELSE 0 END) AS "语文",
(CASE KC WHEN '数学' THEN FS ELSE 0 END) AS "数学",
(CASE KC WHEN '英语' THEN FS ELSE 0 END) AS "英语"
FROM
执行SQL
SELECT
NAME AS "姓名",
MAX(CASE KC WHEN '语文' THEN FS ELSE 0 END) AS "语文",
MAX(CASE KC WHEN '数学' THEN FS ELSE 0 END) AS "数学",
MAX(CASE KC WHEN '英语' THEN FS ELSE 0 END) AS "英语"
FROM GROUP BY ;
版权声明:本文标题:SQL中的casewhenthenelseend用法(数据库内容纵向变横向) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1702420196a6125.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论