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;
等等...以后有再用到的会再补充上。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)