sql substr()函数用法详细
学习笔记
sql 中substr()用法为:
(1)substr()语法:
substr() 函数返回字符串的一部分。
语法:substr(string,start,length)
string - 指定的要截取的字符串。
start - 必需,规定在字符串的何处开始。
正数 - 在字符串的指定位置开始
负数 - 在从字符串结尾的指定位置开始
0 - 在字符串中的第一个字符处开始
length - 指定要截取的字符串长度。
instr()语法:
instr(name,a) 意思:查找字段name中a第一次出现的数
例:正常查询
SELECT SERVICE_TYPE FROM "BIZ_SHARING_PLATFORM_GOVERNMENT"."SCHEME_SERVICE" GROUP BY SERVICE_TYPE
结果为:
1 生命科学>结构生物学>300千伏冷冻电镜常规数据收集
2 生命科学>结构生物学>常规电镜显微结构观察分析
3 生命科学>结构生物学>冷冻离子>电子双束减薄系统
4 生命科学>结构生物学>冷冻离子>冷冻电子双束减薄系统
5 生命科学>结构生物学>卷积成像扫描电子显微镜
6 生命科学>生物资源样本库>样本存储
7 生命科学>数字化平台>高通量测序
8 NULL
使用substr()截取后
SELECT SUBSTR(SERVICE_TYPE,0,INSTR(SERVICE_TYPE,'>')-1) AAA FROM "BIZ_SHARING_PLATFORM_GOVERNMENT"."SCHEME_SERVICE" GROUP BY SERVICE_TYPE
结果为:
1 生命科学
2 生命科学
3 生命科学
4 生命科学
5 生命科学
6 生命科学
7 生命科学
8 NULL
instr()用法
例
SUBSTR(SERVICE_TYPE,0,INSTR(SERVICE_TYPE,'>')-1)
INSTR(SERVICE_TYPE,’>’)-1 数据库的意思是
查找SERVICE_TYPE 字段中 ‘>’ 出现的位置-1(减去‘>’字符长度)得到想要的字符长度
原型:
生命科学>结构生物学>300千伏冷冻电镜常规数据收集
截取后得到:
生命科学
拼接字符串语法:
字符串1||'_'||字符串2||'_'||字符串3 拼接字符串1+字符串2+字符串3
例:
SUBSTR(SERVICE_TYPE,0,INSTR(SERVICE_TYPE||'>','>')-1)
将要截取的字符串拼接了一个‘>’