题目:
        求一语句实现以下功能,有COL1 ,COL2,COL3,COL4,COL5,COL6,COL7,及ST_SIZETEMPLATECODE.
如ST_COL1,ST_COL7的值为1.2.3.4.5.6.7则
ST_SIZETEMPLATECODE为1—7,如 ST_COL7为空,则ST_SIZETEMPLATECODE为1—6,简言之就是只要头尾两个值

数据:

COL1 COL2 COL3 COL4 COL5 COL6 COL7
1 s d e f s
a d f e w q h
r w r q i i p
a d
a s d f f

要求结果:

ST_SIZETEMPLATECODE
1-s
a-h
r-p
a-d
a-f

答案:

【1】
select
col1 || '-' ||
case when col7 is not null then col7
when col6 is not null then col6
when col5 is not null then col5
when col4 is not null then col4
when col3 is not null then col3
when col2 is not null then col2
when col1 is not null then col1 end temp
from temp070524

【2】
SELECT
COL1 || '-' || COALESCE(COL7,COL6,COL5,COL4,COL3,COL2)
FROM TBL0524

『注意』
user@8i> create table t (id int, f blob)
2 /

Table created.

user@8i> insert into t (id) values (1)
2 /

1 row created.

user@8i> select
2      id
3      ,dbms_lob.getlength(f)
4      ,nvl(dbms_lob.getlength(f),0)
5 from t
6 /

ID DBMS_LOB.GETLENGTH(F) NVL(DBMS_LOB.GETLENGTH(F),0)
---------- --------------------- ----------------------------
         1                                                  0

user@8i> select
2      id
3      ,dbms_lob.getlength(f)
4      ,coalesce(dbms_lob.getlength(f),0)
5 from t
6 /
    ,coalesce(dbms_lob.getlength(f),0)
     *
ERROR at line 4:
ORA-00904: invalid column name

user@9i> create table t (id int, f blob)
2 /

Table created.

user@9i> insert into t (id) values (1)
2 /

1 row created.

user@9i> select
2      id
3      ,dbms_lob.getlength(f)
4      ,nvl(dbms_lob.getlength(f),0)
5 from t
6 /

ID DBMS_LOB.GETLENGTH(F) NVL(DBMS_LOB.GETLENGTH(F),0)
---------- --------------------- ----------------------------
         1                                                  0

user@9i> select
2      id
3      ,dbms_lob.getlength(f)
4      ,coalesce(dbms_lob.getlength(f),0)
5 from t
6 /

ID DBMS_LOB.GETLENGTH(F) COALESCE(DBMS_LOB.GETLENGTH(F),0)
---------- --------------------- ---------------------------------
         1                                                       0

case when 和 coalesce相关推荐

  1. 【PostgreSQL】行变列、非空(CASE WHEN、COALESCE)语句总结

    1. 源表结构: order_id class count 111101100002 3 0 111101100012 1 3 11110112002 1 2 111101100202 2 0 2. ...

  2. case when和COALESCE

    case when Case具有两种格式.简单Case函数和Case搜索函数. 简单Case函数 CASE sexWHEN '1' THEN '男'WHEN '2' THEN '女'ELSE '其他' ...

  3. 在SQL Server中使用SQL Coalesce函数

    This article explores the string manipulation using SQL Coalesce function in SQL Server. 本文探讨了在SQL S ...

  4. MySQL 避坑宝典 -- 来自小米的开源工具

    摘自: https://github.com/XiaoMi/soar/blob/master... 这是小米 soar 的默认启发规则汇总,也是 DBA 多年精华总结.熟读各个案例,对于一般的 MyS ...

  5. Netezza向GBase 8a迁移总结

    Netezza向GBase 8a迁移总结 目 录 前言 数据类型 2.1. 综述 2.2. 数值类型 2.2.1. 精确数值数据类型 2.2.2. 近似数值数据类型 2.3. 字符串数据类型 2.3. ...

  6. 读SQL进阶教程笔记14_SQL编程要点

    1. 消灭NULL 1.1. NULL惹人讨厌的原因 1.1.1. 进行SQL编码时,必须考虑违反人类直觉的三值逻辑 1.1.2. 指定IS NULL.IS NOT NULL的时候,不会用到索引,SQ ...

  7. 使用Python爬取CSDN历史博客文章列表,并生成目录

    使用Python爬取CSDN历史博客文章列表,并生成目录 这篇博客将介绍如何使用Python爬取CSDN历史博客文章列表,并生成目录. 2020年 2020年04月 cv2.threshold() 阈 ...

  8. Spark LDA 主题抽取

    本文主要对使用Spark MLlib LDA进行主题抽取时遇到的工程问题做一总结,列出其中的一些小坑,或可供读者借鉴.关于LDA的具体理论等可以自行google.主题预测请参考:Spark LDA 主 ...

  9. 小米soar mysql优化规则

    启发式规则建议 [toc] 建议使用 AS 关键字显示声明一个别名 Item:ALI.001 Severity:L0 Content:在列或表别名(如"tbl AS alias") ...

最新文章

  1. GitHub 总星 4w+!删库?女装?表情包?这些沙雕中文项目真是我每天快乐的源泉!...
  2. Oracle中rank() over, dense_rank(), row_number() 的区别
  3. Real to Int
  4. PIL.Image convert to numpy array
  5. 东师计算机应用基础在线作业,东师《计算机应用基础》15春在线作业1答案
  6. CV之Haar特征描述算子-人脸检测
  7. CAD2007输出高清图片
  8. exchange创建邮箱组_Exchange 2013学习笔记四:新建用户邮箱
  9. TFN FMT800 系列矢量网络分析仪技术评测
  10. 大二上学期总结与感想
  11. jaeger,zipkin,datadog,skywalking等分布式追踪工具
  12. processing摸索前行(01)
  13. 做一台网络收音机——1动机和特点
  14. IT 行业最宜居的城市是哪里?
  15. Lua04 实例列举 ESB2CP的报文转换流程
  16. Python五分钟教你制作一个太阳
  17. 戴尔电脑恢复系统后,D盘被加密Bitlocker,要求输入48位密钥,才能打开D盘---解决过程
  18. luoguP1074 靶形数独
  19. Pytest + Selenium + Allure + Jenkins搭建简单自动化框架
  20. mac电脑磁盘硬盘爆满了怎么办?

热门文章

  1. 企业应该在什么阶段进行融资?
  2. Hash Trick
  3. Google正在推广HTTPS
  4. NET 5连mysql数据库遇到的问题-1252;PublicKeyToken=cc7b13ffcd2ddd51
  5. phonegap实现照片上传
  6. 计算机网络pop3是什么意思,IMAP和POP3的区别是什么
  7. 琴弦发声原理【matlab调音_3】
  8. 实例004计算正方形周长
  9. 被风吹过的冬天——1
  10. 计算机如何获取目标ip,如何在自己的电脑查看别人电脑的ip地址?教你,马上成为电脑高手...