mysql 字符串截取:

MySQL 字符串截取函数:left(), right(), substring(), substring_index()。还有 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。  
1. 字符串截取:left(str, length)  
mysql> select left('sqlstudy.com', 3);  
+-------------------------+  
| left('sqlstudy.com', 3) |  
+-------------------------+  
| sql                     |  
+-------------------------+  
2. 字符串截取:right(str, length)  
mysql> select right('sqlstudy.com', 3);  
+--------------------------+  
| right('sqlstudy.com', 3) |  
+--------------------------+  
| com                      |  
+--------------------------+  
3. 字符串截取:substring(str, pos); substring(str, pos, len)  
3.1 从字符串的第 4 个字符位置开始取,直到结束。  
mysql> select substring('sqlstudy.com', 4);  
+------------------------------+  
| substring('sqlstudy.com', 4) |  
+------------------------------+  
| study.com                    |  
+------------------------------+  
3.2 从字符串的第 4 个字符位置开始取,只取 2 个字符。  
mysql> select substring('sqlstudy.com', 4, 2);  
+---------------------------------+  
| substring('sqlstudy.com', 4, 2) |  
+---------------------------------+  
| st                              |  
+---------------------------------+  
3.3 从字符串的第 4 个字符位置(倒数)开始取,直到结束。  
mysql> select substring('sqlstudy.com', -4);  
+-------------------------------+  
| substring('sqlstudy.com', -4) |  
+-------------------------------+  
| .com                          |  
+-------------------------------+  
3.4 从字符串的第 4 个字符位置(倒数)开始取,只取 2 个字符。  
mysql> select substring('sqlstudy.com', -4, 2);  
+----------------------------------+  
| substring('sqlstudy.com', -4, 2) |  
+----------------------------------+  
| .c                               |  
+----------------------------------+  
我们注意到在函数 substring(str,pos, len)中, pos 可以是负值,但 len 不能取负值。  
4. 字符串截取:substring_index(str,delim,count)  
4.1 截取第二个 '.' 之前的所有字符。  
mysql> select substring_index('www.sqlstudy.com.cn', '.', 2);  
+------------------------------------------------+  
| substring_index('www.sqlstudy.com.cn', '.', 2) |  
+------------------------------------------------+  
| www.sqlstudy                                   |  
+------------------------------------------------+  
4.2 截取第二个 '.' (倒数)之后的所有字符。  
mysql> select substring_index('www.sqlstudy.com.cn', '.', -2);  
+-------------------------------------------------+  
| substring_index('www.sqlstudy.com.cn', '.', -2) |  
+-------------------------------------------------+  
| com.cn                                          |  
+-------------------------------------------------+  
4.3 如果在字符串中找不到 delim 参数指定的值,就返回整个字符串  
mysql> select substring_index('www.sqlstudy.com.cn', '.coc', 1);  
+---------------------------------------------------+  
| substring_index('www.sqlstudy.com.cn', '.coc', 1) |  
+---------------------------------------------------+  
| www.sqlstudy.com.cn                               |  
+---------------------------------------------------+  
 4.4 截取一个表某个字段数据的中间值 如该字段数据为  1,2,3  
mysql> select substring_index(substring_index(该字段, ',', 2) , ',', -1) from 表名;    
+--------------------------------------------------------------+    
| substring_index(substring_index(该字段, ',', 2);  , ',', -1)|    
+--------------------------------------------------------------+    
| 2                                        |    
+--------------------------------------------------------------+

locate(字符,字段名):

使用locate(字符,字段名)函数,

如果包含,返回>0的数(这个数是这个字符在这个字段中的字符串中的位置),否则返回0

语法: locate(string substr, string str[, int pos])
返回值: int
说明:返回字符串 substr 在 str 中从 pos 后查找,首次出现的位置

hive> select locate('a','abcda',1);
OK
1
Time taken: 0.391 seconds, Fetched: 1 row(s)
hive> select locate('a','abcda',2);
OK
5
Time taken: 0.406 seconds, Fetched: 1 row(s)

replace(str,from_str,to_str) :
在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串。

例子:

select
province_name,
case when locate('省',province_name)>0 then replace(province_name,'省','')when locate('市',province_name)>0 then replace(province_name,'市','')when locate('广西壮族自治区',province_name)>0 then replace(province_name,'壮族自治区','')when locate('新疆维吾尔自治区',province_name)>0 then replace(province_name,'维吾尔自治区','')when locate('西藏自治区',province_name)>0 then replace(province_name,'自治区','')when locate('宁夏回族自治区',province_name)>0 then replace(province_name,'回族自治区','')when locate('内蒙古自治区',province_name)>0 then replace(province_name,'自治区','')else  province_nameend province_name,
sum(curr_position) value from t_cal_positions where left(statistic_time,7) = '2018-12' group by province_name

效果(中间那列):

find_in_set(str,strlist):

参考:https://blog.csdn.net/weixin_38750084/article/details/103052096

str 要查询的字符串
strlist 字段名 参数以”,”分隔 如 (1,2,6,8)
查询字段(strlist)中包含(str)的结果

实例1:

必须全字符才能匹配上。

实例2:

instr(str,substr) :

在一个字符串(str)中搜索指定的字符(substr),返回发现指定的字符的位置(index); 
str 被搜索的字符串 
substr 希望搜索的字符串 
结论:在字符串str里面,字符串substr出现的第一个位置(index),index是从1开始计算,如果没有找到就直接返回0,没有返回负数的情况。

select
title,
salary_request,
instr(title,'员'),
case
when
instr(title,'员')>0 then 111111
end salary_request1from t_positions;

format_number(number x, int d)

小数位格式化成字符串函数:format_number
语法: format_number(number x, int d)
返回值: string
说明:将数值 x 的小数位格式化成 d 位,四舍五入

hive> select format_number(5.23456,3) from iteblog;
OK
5.235

concat_ws(string SEP, array)

数组转换成字符串的函数:concat_ws

语法: concat_ws(string SEP, array)
返回值: string
说明:返回将数组链接成字符串后的结果,SEP 表示各个字符串间的分隔符

hive> select concat_ws('|',array('a','b','c')) from iteblog;
OK
a|b|c

sql:mysql:函数:字符串函数相关推荐

  1. php mysql字符串截取比较读取_MySQL_Mysql字符串截取函数SUBSTRING的用法说明,感觉上MySQL的字符串函数截取 - phpStudy...

    Mysql字符串截取函数SUBSTRING的用法说明 感觉上MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用. 函数: 1.从左开始截取 ...

  2. MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr)

    转: MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr) LPAD(str,len,padstr) 用字符串 padstr对 str进行左边填 ...

  3. sql中截取字符串函数_SQL Server 2017中的顶级SQL字符串函数

    sql中截取字符串函数 SQL Server 2017 has been in the talk for its many features that simplify a developer's l ...

  4. SQL 常用的字符串函数

    SQL 常用的字符串函数 1.replace:替换函数 replace(string,from_str,to_str) 即:将string中所有出现的from_str替换为to_str 2.left: ...

  5. SQL Server 分隔字符串函数实现

    SQL Server 分隔字符串函数实现 在SQL Server中有时候也会遇到字符串进行分隔的需求.平时工作中常常遇到这样的需求,例如:人员数据表和人员爱好数据表,一条人员记录可以多多人员爱好记录, ...

  6. clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数

    clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数 算数函数 ...

  7. 达梦数据库常用函数——字符串函数

    达梦数据库常用函数--字符串函数 字符串函数 函数 ASCII 函数 BIT_LENGTH 函数 CHAR 函数 CHAR_LENGTH / CHARACTER_LENGTH 函数 INITCAP 函 ...

  8. mysql的字符串函数

    对于针对字符串位置的操作,第一个位置被标记为1. 1.ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NULL. mysq ...

  9. 四、SQL函数②(字符串函数)

    字符串函数:用户的密码.电子邮箱地址.证件号码等都是以字符串类型保存在数据库中的. 计算字符串长度 LENGTH()函数用来计算一个字符串的长度.该函数接受一个参数,此参数为待计算的字符串表达式,在M ...

  10. c连接mysql数据库字符串函数_在mysql数据库—— 字符串函数的运用

    在mysql数据库中函数的使用 字符函数: 函数名称 描述 concat 字符连接 Concat_ws 使用指定的分隔符进行字符连接 format 数字格式化(千分化) Lower 转换成小写字母 u ...

最新文章

  1. 如何制作风格迁移图?
  2. Nginx入门之两种handler函数的挂载方式
  3. 可自由扩展的圆角矩形制作方法
  4. 数据写入mysql的方式,FMDB写入大量数据的处理方法
  5. mysql装完是什么样儿的_Win7系统安装MySQL之后找不到指定文件与服务如何解决?...
  6. 21模块-orientation【管理设备的方向信息】
  7. html原生js请求
  8. 软件测试中动态测试与静态测试的区别
  9. 苦熬31年终于登陆科创板!WPS如何一步步熬到了今天?
  10. Office小知识(一)——word插入各种方向和条件个数的大括号{ }
  11. 增长工程日 | 从战略到战术,如何搭建新消费品牌增长体系
  12. 简单图形验证码的识别
  13. css select默认选中字体颜色,通过js修改input、select默认字体颜色
  14. OSError: Unable to create file (unable to open file: name = ‘../working/best.hdf5 No such file or di
  15. 正版游戏怎么开服务器,方舟生存进化
  16. 简易电梯控制系统设计(两层楼)(
  17. springboot发送邮件-163邮箱
  18. 高级操作符——位操作符讲解(移位操作符~ 按位与''操作符~ 按位或'|'操作符~ 按位异或'^'操作符)
  19. Geoserver发布wms地图服务的样式制作(地图工具篇.4)
  20. 2022 研究生的压力应对与健康心理 期末考试答案

热门文章

  1. 【链世纪对话系列No.9】浪潮存储资深架构师叶毓睿:浪潮如何助力分布式云存储数据中心快速发展?
  2. 用PS把人物皮肤处理的质感又通透
  3. phpcms php5.5,phpcms_v9.5.8_GBK源码下载
  4. 新域名正在备案,静候佳音
  5. MGJRouter代码分析
  6. shell用户输入数字加法操作
  7. csharp 在万年历中计算显示农历日子出错
  8. 服务器安装系统要如何载入驱动程序,Dell 服务器安装Windows 2008 R2时手动加载阵列卡驱动...
  9. 「硬核JS」一次搞懂JS运行机制
  10. css实现遮罩层动画