怎么用sql查询str(2009)

怎么用sql查询str(2009),第1张

find函数:语法:find (string, sub3tring<, modifiers, startpos>),返回substring首次在string中出现的位置,若未找到,则返回0。

其中:

modifier可以是

i|I : 不区分大小写的搜索

t|T : 忽略string和substring中的末尾空格

startpos指定从string的何处开始搜索substring,正值从左至右,负值反向。

data test

str='She seashells.SHE, she does'

strl=find(str,'she')/*区分大小写,从str第1个字符开始_找,返回8*/

str2=find(str,'she','i')/*不区分大小写,从str第1个字符开始_找,返回1*

str3=find(str,'she ')/*区分大小写,从str第1个字符开始_找she+空格,返回20*/

str4=find(str,'she ','t')/*区分大小写,从3tr第1个字符开始忽珞空格后_找she.返回8*/

str5=find(str,'she',12)/*区分大小写,从str第12个字符开始_找She.返回20*/

str6=find(str,'she',-7)/*区分大小写,从str第7个字符往左_找she,找不到返回0*/

str7=find(str,'she','i',-7)/*不区分大小写,从str第7个字符往左_找she,找到返回1*/

str8=find(str,'she',-17)/*区分大小写,从str第17个字符往左_找she,找到返回8*/

str9=find(str,'she','i',-17)/*不区分大小写,从str第17个字符往左_找she,找到返回15*/

run

proc print

run

函数介绍:STR_TO_DATE(string, format_mask),将文本转换成日期型。

string:对应的文本数据,如“1/1/2017 0:00”;“August 10 2017”;“‘20140422154706’”

format_mask:是根据前面的文本数据(string),输入对应的文本数据格式;

下面举出相关例子:

SELECT STR_TO_DATE('1/1/2017 0:00','%c/%d/%Y %H:%i')

运行结果:2017-01-01 00:00:00

SELECT STR_TO_DATE('1-1-2017 02:00','%c-%d-%Y %H:%i')

运行结果:2017-01-01 02:00:00

SELECT STR_TO_DATE('112017 02:00','%c%d%Y %H:%i')

运行结果:2017-11-20 02:00:00

SELECT STR_TO_DATE('August 10 2017','%M %d %Y')

运行结果:2017-08-10

从上面的例子我们看出,这个函数还是比较简单的,唯一要做的就是对对应的string写出对应的匹配表达式就好了。

注意:

在面对不同的string文本的时候,需要使用不同的表达方式。

如月份是:August,则只能用 %M来匹配;当月份是数字时可以用%c或%m来匹配;

如小时是:24小时计时时只能用%H或者%k,12小时计时则需要用%h;

等等...以后有再用到的会再补充上。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10008790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存