求教SQL语句substring的用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求教SQL语句substring的用法相关的知识,希望对你有一定的参考价值。

现有表I,其中一个字段为L,格式为‘YY99YY99’,如果我要查询出L中所有第二个字母为A,且第七个数字为5的记录。我这么写对吗?
selcet L from I
where substring(L,2,1)='A' and substring(L,7,1)='5'

参考技术A   字符串截取,substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串。
substring(int beginIndex, int endIndex) 返回一个新字符串,它是此字符串的一个子字符串。
beginIndex - 起始索引(包括)。从0开始
endIndex - 结束索引(不包括)。
"unhappy".substring(2) returns "happy"
"hamburger".substring(4, 8) returns "urge"

sql server中substring的用法

SQL 中的 substring 函数是用来截取一个栏位资料中的其中一部分。

例如,我们需要将字符串\'abdcsef\'中的‘abd’给提取出来,则可用substring 来实现:

select substring(\'abdcsef\',1,3)

结果:

\'abd\'

括号中数字‘1’表示截取的起始位置是从该字符串第一个字符开始,‘3’表示截取后得到的字符串长度为3个字符。

这是‘substring’最基础的语法,当然,我们的需求有时候会变得比较复杂,例如以下例子:

我们只想要得到\'roomno\'中的房间号,发现起始字符位置并不是固定的,而且,我们需要的房间号长度也不固定。

此时,我们可以运用‘charindex’这个函数就可以轻松搞定,它是用来定位某个特定字符在该字符串中的位置,即该函数

得到的结果是一个用来表示某个特定字符位置的数字。执行如下代码:

select room_stand=substring(roomno,charindex(\'\',roomno)+1,charindex(\'\',roomno)-charindex(\'\',roomno)-1) 
from PROPERTY_room
where roomno like \'%单元%室%\' 

结果:

 

以上是关于求教SQL语句substring的用法的主要内容,如果未能解决你的问题,请参考以下文章

SQL中SUBSTRING的用法

subString的用法

SQL:substring用法

sql server中substring的用法

sql server中substring的用法

sql server中substring的用法