Case具有两种格式。简单Case函数和Case搜索函数。
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END
这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。
还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。
--比如说,下面这段SQL,你永远无法得到“第二类”这个结果
CASE WHEN col_1 IN ( 'a', 'b') THEN '第一类'
WHEN col_1 IN ('a') THEN '第二类'
ELSE'其他' END
sql 语句错误
select case sales_type
when 'S' then 'Supply agreement'
when 'C' then 'Outright purchase'
end,
case adidas_division
when 'Footwear' then 'Footwear'
when 'AandG' then 'A&G'
when 'Apparel' then 'Apparel'
else '-'
end
into machine_report from machine_records join retailers on machine_records.retailer_id=retailers.retailer_id
报错 column "case" specified more than once
------解决方案--------------------
SELECT (CASE WHEN sales_type = 'S' THEN 'Supply agreement'
WHEN sales_type = 'C' THEN 'Outright purchase'
END) AS a,
(CASE WHEN adidas_division='Footwear' THEN 'Footwear'
WHEN adidas_division='AandG' THEN 'A&G'
WHEN adidas_division='Apparel' THEN 'Apparel'
ELSE '-'
END) b 试试
相关推荐
oracle语法大全 oracle语法大全
oracle语法大全 个人整理 oracle语法大全 个人整理 oracle语法大全 个人整理
可将常规的sqlserver 的sql语句转换为 oracle语法,核心逻辑在SqlConvertToOracle.pas,便于入门。
pg与oracle语法差异
Oracle语法,有关于oracle的基础知识。
oracle语法详细介绍,简单易懂,很实用
UltraEdit/UEStudio Oracle 语法高亮/语法着色文件
Oracle语法指南.zip , 相当详尽的语法参考和实例描叙,绝对物超所值,嘿嘿嘿嘿! 我的微笑很甜蜜的!
Oracle 语法大全 知识库
Oracle语法详解视频教程(二)part1,一共6个部分,需6个全部下载才能解压。 该视频内容为:介绍Oracle语句的条件查询和排序操作。
Oracle基本语法全集+终级整理版+全集文档版
一份本人自行整理的关于Oracle语法的文档,应该算是比较全面的了,呵呵,相当于一本便捷查找字典,会省去你很多搜索网络和书籍的时间。希望对你有帮助
1. 验证所有 SELECT、INSERT、UPDATE 和 DELETE 语句的语法是有效的。进行任何必要的修改。 2. 把所有外部联接改为 SQL-92 标准外部联接语法。 3. 用相应 SQL Server 函数替代 Oracle 函数。 4. 检查所有的比较...
Oracle常用语法
oracle sql 语法大全 oracle sql 语法大全
ORACLE和SQL语法区别归纳 对于新手有帮助
本猿最近做数据库迁移,修改了大量sql语句,对oracle和MySQL语法之间的一些不同之处总结了一些。
Oracle和SqlServer的语法区别
oracle常用语法概述,供初学者使用。