sql中的substr与substring函数用法
- 关于substr和substring的区别
-
- 1、Oracle的substr
- 2、javascript中的substr和substring两个方法
- 3、java中substring是string对象的函数
- 4、总结:
关于substr和substring的区别 首先申明,substr()是基于Oracle的,substring()是基于SQL Server的,切记不可混用,否则会报错!
MySQL: SUBSTR( ), SUBSTRING( )
Oracle: SUBSTR( )
SQL Server: SUBSTRING( )
1、Oracle的substr 在plsql中substr是一个单独的函数,字符串索引以1开始。
语法:
substr( string, start_position, [ length ] )
如果start_position是0,substr还是认为是1开始。
如果start_position是正数,substr以start_position开始计算,包含start_position。
如果start_position是负数,则从string结尾开始向前数数。
length,返回字符串的长度,如果是负数,返回NULL。
例子:
substr('This is a test', , 2) would return 'is'
substr('This is a test', 6) would return 'is a test'
substr('TechOnTheNet', 1, 4) would return 'Tech'
substr('TechOnTheNet', -3, 3) would return 'Net'
substr('TechOnTheNet', -6, 3) would return 'The'
substr('TechOnTheNet', -8, 2) would return 'On'
2、javascript中的substr和substring两个方法 在javascript中有substr和substring两个方法,字符串的索引以0开始。
语法:
substring 方法用于提取字符串中介于两个指定下标之间的字符。
stringObject.substring(start,stop)
说明:
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0。
substr 方法用于返回一个从指定位置开始的指定长度的子字符串。
stringObject.substr(start [, length ])
说明:
如果 length 为 0 或负数,将返回一个空字符串。
如果没有指定该参数,则子字符串将延续到stringObject的最后。
例子:
"0123456789".substring(5) return "56789"
"0123456789".substring(0,5) return "01234"
"0123456789".substring(2,0) return "01"
"0123456789".substring(-1,5) return "01234"
"0123456789".substr(5) return "56789"
"0123456789".substr(2,0) return ""
"0123456789".substr(2,2) return "23"
"0123456789".substr(-1,5) return "01234"
3、java中substring是string对象的函数 java中substring是string对象的函数,返回位于String 对象中指定位置的子字符串。该索引从0开始起算。
语法:
strVariable.substring(start[,end])
substring 方法使用start和end两者的较小值作为子字符串的起始点。strvar.substring(0,3)和strvar.substring(3, 0)将返回相同的子字符串。
包含start位置的值,不包含end位置的值。
例子:
"05718888888".substring(0,4) returns "0571"
"hamburger".substring(4, returns "urge"
"smiles".substring(1, 5) returns "mile"
4、总结: 除了Oracle的substr以1以字符串索引,其它两个语言都是以0作用索引。
java的substring与javascript的substring相似。
javascript的substr与Oracle/PLSQL的substr相似。
【函数|sql中的substr与substring函数用法】原文出处:http://jw1314.iteye.com/blog/1211431
推荐阅读
- 数据库|面试官(MySQL 为什么用 B+ 树实现索引)
- MySQL|MySQL为什么会选择B+树索引()
- 微信小程序|微信小程序05 事件绑定与事件传参
- SQL每日一练|SQL每日一练(牛客新题库)——第2天( 条件查询)
- SqlServer入门到精通|SQL实现将数据表中的字段中的值按分隔符分成多列
- 个人学习|牛客网在线编程题库——个人练习打卡记录(暂时停止)
- MySQL时区问题
- 用户故事分享(vika维格表助力公益知识库项目落地)
- 应用案例|数据分析初学入门——22本SQL学习书籍推荐