Decode() 对应 case when函数

case CHARINDEX('/',start_point_name)

when 0 then start_point_name

else substring(start_point_name,1,CHARINDEX('/',start_point_name)-1)

end

注意:sqlserver在用case when判断是否为null时,语法不一样

判断null应该用:

case when identifier is null then airway_point_name else identifier  end,

最简单的办法就是用isnll函数 isnull(idenfier, airway_point_name)

不行!isnull(idenfier, airway_point_name)会将idenfier缩短,本来5个字符,替换后只有4个字符,原因未知,最好不用isnull

instr对应CHARINDEX('/',start_point_name)函数,只不过两个参数的含义正好颠倒,也是从1开始计数

substr对应substring 参数完全一样,但长度参数不能缺少,不能默认到末尾,只能给一个足够大的长度值。

replace函数则完全一样

length函数对应 len函数

2016.7.10 SqlServer语句中类似decode、substr、instr、replace、length等函数的用法的更多相关文章

  1. sql语句中----删除表数据drop、truncate和delete的用法

    sql语句中----删除表数据drop.truncate和delete的用法 --drop drop table  tb   --tb表示数据表的名字,下同 删除内容和定义,释放空间.简单来说就是把整 ...

  2. MySQL中的insert ignore into, replace into等的一些用法小结(转)

    MySQL中的insert ignore into, replace into等的一些用法总结(转) 在MySQL中进行条件插入数据时,可能会用到以下语句,现小结一下.我们先建一个简单的表来作为测试: ...

  3. SQL中字符串截取、连接、替换等函数的用法

    一.SQL中SUBSTRING函数的用法1.功能:返回字符.二进制.文本或图像表达式的一部分2.语法:SUBSTRING ( expression, start, length )3.QL 中的 su ...

  4. php中print_r、var_dump和var_export几个函数的用法区别

    php中print_r.var_dump和var_export几个函数的用法区别

  5. Excel 数据导入至Sqlserver 数据库中 ltrim() 、rtrim() 、replace() 函数 依次空格无效问题

    今天导一些数据从Excel中至Sqlserver 数据库中,在做数据合并去重的时候发现,有两条数据一模一样,竟然没有进行合并: 最后发现有一条后面有个“空格”,正是因为这个“空格”让我抓狂许久,因为它 ...

  6. MySql查询语句中解决“该列没有包含在聚合函数或者groupby子句中”的相关问题方法

    首先引入语句来源,表结构和数据如下: 需求是:查出员工(personname)在不同店铺(store)的总薪酬(salary),相同店铺输出store,不同店铺输出multi_store. 正确查询语 ...

  7. mysql语句中----删除表数据drop、truncate和delete的用法

    程度从强到弱 1.drop  table tb        drop将表格直接删除,没有办法找回 2.truncate (table) tb       删除表中的所有数据,不能与where一起使用 ...

  8. 2019.6.13_SQL语句中----删除表数据drop、truncate和delete的用法

    一.SQL中的语法 1.drop table 表名称                         eg: drop table  dbo.Sys_Test   2.truncate table 表 ...

  9. sql语句中----删除表数据drop、truncate和delete的用法(转)

    转载于:http://www.cr173.com/html/40708_1.html 说到删除表数据的关键字,大家记得最多的可能就是delete了 然而我们做数据库开发,读取数据库数据.对另外的两兄弟 ...

随机推荐

  1. 进程【TLCL】

    ps命令 ps x 加上 "x" 选项(注意没有开头的 "-" 字符),告诉 ps 命令,展示所有进程,不管它们由什么 终端(如果有的话)控制. 在 TTY 一 ...

  2. MapReduce-输入分片与记录

    一个输入分片(split)就是一个由单个map操作来处理的输入块.每一个map操作只处理一个输入分片.每个分片被划分为若干个记录,每条记录就是一个键值对,map一个接一个地处理记录.输入分片和记录都是 ...

  3. BZOJ2878 [Noi2012]迷失游乐园

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...

  4. codevs 2800 送外卖 TSP问题

    2800 送外卖 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond         题目描述 Description 有一个送外卖的,他手上有n份订单,他要把n份 ...

  5. 电影_Z

    1. 西施叨叨叨 西施叨叨叨 2015 第21期 : <<指环王>>系列, <<冰与火之歌>>系列(权力的游戏 将正统史诗奇幻剧搬在电视网上的首部电视剧 ...

  6. Spring Boot入门——多文件上传大小超限问题解决

    多文件上传中遇到上传文件大小的问题 org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededExcepti ...

  7. Pycharm如何打断点

    一. python代码的调试方式 1. 使用print语句打印出来 2. 在编辑工具中,加断点跟踪(打断点) 3. 使用日志模块,输出到日志中 下面我们来看一下如何打断点 二. 环境 python 3 ...

  8. JAVA实现多线程的四种方式

    JAVA多线程实现方式: 1.继承Thread类(无返回值) 2.实现Runnable接口(无返回值) 3.实现Callable接口,通过FutureTask包装器来创建Threak线程(有返回值) ...

  9. SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)

    一.spring cloud简介 spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选.分布式会话等等.它运 ...

  10. centos下环境变量配置

    export JAVA_HOME=/usr/local/jdk1.7.0_80export JRE_HOME=/usr/local/jdk1.7.0_80/jreexport CLASSPATH=.: ...