- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章MySQL 字符串截取相关函数小结由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
文中给大家介绍MySQL 字符串截取相关函数,具体内容如下所示:
在工作中,可能需要将某些字段按某个分割符组成一个字符串作为字段值存取到数据库表中,比如某个任务对应三个结果,分别存储在不同的数据表中,这时可以将这三个不同表的主键按照约定的顺序进行组合(主键a:主键b:主键c)。当需要分别去查任务对应类别的详情信息时,可以截取特定位置的字符串(主键b) join 表b进行操作。正好最近也遇到这块操作,特意将 MySQL 字符串截取的相关函数做一个梳理,以便今后回顾.
1、left(str, len) 。
返回字符串 str 自左数的 len 个字符。如果任一参数为 NULL,则返回 NULL.
1
2
3
4
5
6
7
|
mysql>
select
left
(
'shinejaie'
, 5);
+
---------------------------------------------------------+
|
left
(
'shinejaie'
, 5) |
+
---------------------------------------------------------+
| shine |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
|
2、right(str, len) 。
返回 str 右边末 len 位的字符。如果有的参数是 NULL 值,则返回 NULL.
1
2
3
4
5
6
7
|
mysql>
select
right
(
'shinejaie'
, 4);
+
---------------------------------------------------------+
|
right
(
'shinejaie'
, 4) |
+
---------------------------------------------------------+
| jaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
|
3、substring_index(str, delim, count) 。
返回 str 中第 count 次出现的分隔符 delim 之前的子字符串。如果 count 为正数,将最后一个分隔符左边(因为是从左数分隔符)的所有内容作为子字符串返回;如果 count 为负值,返回最后一个分隔符右边(因为是从右数分隔符)的所有内容作为子字符串返回。在寻找分隔符时,函数对大小写是敏感的。如果在字符串 str 中找不到 delim 参数指定的值,就返回整个字符串.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
mysql>
select
substring_index(
'home.cnblogs.com'
,
'.'
, 2);
+
---------------------------------------------------------+
| substring_index(
'home.cnblogs.com'
,
'.'
, 2) |
+
---------------------------------------------------------+
| home.cnblogs |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
substring_index(
'home.cnblogs.com'
,
'/'
, 2);
+
---------------------------------------------------------+
| substring_index(
'home.cnblogs.com'
,
'/'
, 2) |
+
---------------------------------------------------------+
| home.cnblogs.com |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
|
4、substring() 与 substr() ---> substring(str, pos)、substring(str from pos)、substring(str, pos, len)、substring(str from pos for len) 。
在以上4种函数变种形式中,没有 len 参数的函数形式会返回自 str 中位置 pos 处之后的子字符串;有 len 参数的函数形式会返回自 str 中位置 pos 处之后,长度为 len 的子字符串。使用 FROM 的函数形式则是采用的标准的 SQL 语法。pos 参数也可能取负值,在这种情况下,取字符串的方式是从字符串 str 的末尾向前(而非从前往后),从这种逆向顺序的 pos 处开始取字符串。另外,负值的 pos 参数可用于任何形式的 substring() 函数中.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
mysql>
select
substring
(
'shinejaie'
, 6);
+
---------------------------------------------------------+
|
substring
(
'shinejaie'
,6) |
+
---------------------------------------------------------+
| jaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
substr(
'shinejaie'
from
6);
+
---------------------------------------------------------+
| substr(
'shinejaie'
from
6) |
+
---------------------------------------------------------+
| jaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
substring
(
'shinejaie'
, -9, 5);
+
---------------------------------------------------------+
|
substring
(
'shinejaie'
, -9, 5) |
+
---------------------------------------------------------+
| shine |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
|
5、trim([{both | leading | trailing} [remstr] form] str) 。
将字符串 str去除 remstr 所指定的前缀或后缀,返回结果字符串。如果没有指定标识符both、leading,或trailing,则默认采用 both,即将前后缀都删除。remstr 其实是个可选参数,如果没有指定它,则删除的是空格.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
mysql>
select
trim(
' shinejaie '
);
+
---------------------------------------------------------+
| trim(
' shinejaie '
) |
+
---------------------------------------------------------+
| shinejaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
trim(leading
'cn_'
from
'cn_shinejaiecn_'
);
+
---------------------------------------------------------+
| trim(leading
'cn_'
from
'cn_shinejaiecn_'
) |
+
---------------------------------------------------------+
| shinejaiecn_ |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
trim(both
'cn_'
from
'cn_shinejaiecn_'
);
+
---------------------------------------------------------+
| trim(both
'cn_'
from
'cn_shinejaiecn_'
) |
+
---------------------------------------------------------+
| shinejaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
mysql>
select
trim(trailing
'cn_'
from
'cn_shinejaiecn_'
);
+
---------------------------------------------------------+
| trim(trailing
'cn_'
from
'cn_shinejaiecn_'
) |
+
---------------------------------------------------------+
| cn_shinejaie |
+
---------------------------------------------------------+
1 row
in
set
(0.00 sec)
|
总结 。
以上所述是小编给大家介绍的MySQL 字符串截取相关函数小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我网站的支持! 。
原文链接:https://www.cnblogs.com/shinejaie/p/5235516.html 。
最后此篇关于MySQL 字符串截取相关函数小结的文章就讲到这里了,如果你想了解更多关于MySQL 字符串截取相关函数小结的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
目录 前言 style-loader css-loader sass-loader postcss-loader babel-l
目录 1、简单动态字符串(SDS) 2、链表 3、字典 哈希表 哈希表节点 字典 4、跳跃表
JS运行三部曲 js运行代码共分三步 语法分析 预编译 解释执行 JavaScript代码在运行时,首先会进行语法分析,通篇检查代码是否存在低级错误,然后进行预编译,整理内
目录 +拼接方式 sprintf函数 Join函数 buffer.Builderbuffer.WriteString函数 buffer.B
下面整理下python有哪些方式可以读取数据文件。 1. python内置方法(read、readline、readlines) read() : 一次性读取整个文件内容。推荐使用re
背景 项目中的流程监控,有几种节点,需要监控每一个节点是否超时。按传统的做法,肯定是通过定时任务,去扫描然后判断,但是定时任务有缺点:1,数据量大会慢;2,时间不好控制,太短,怕一
目录 1. 提炼函数 2. 合并重复的条件片段 3. 把条件分支语句提炼成函数 4. 合理使用循环 5. 提前让函数退出代替嵌套条件分支
开始之前,pandas中dataframe删除对象可能存在几种情况 1、删除具体列 2、删除具体行 3、删除包含某些数值的行或者列 4、删除包含某些字符、文字的行或者列 本文就针对这四种情况探讨
setData setData 是小程序开发中使用最频繁的接口,也是最容易引发性能问题的接口。在介绍常见的错误用法前,先简单介绍一下 setData 背后的工作原理。 工作原理 小程序的视图层
下面是五种实现斐波那契数列的方法 循环 ? 1
一,分析代码运行时间 第1式,测算代码运行时间 平凡方法 快捷方法(jupyter环境) 第2式,测算代码多次运行平均时间 平凡方法 快捷方法(jupyter环境) 第
python之成为图像处理任务的最佳选择,是因为这一科学编程语言日益普及,并且其自身免费提供许多最先进的图像处理工具。本文主要介绍了一些简单易懂最常用的python图像处理库。 当今世界充满了各种
流式布局 采用流式布局会将元素按从左到右的顺序排列,如果一个元素在一行中放不下,那这个元素会另起一行依然按照从左到右的顺序排列 示例: 代码 public class Tes
@PropertySource 作用是:对自定义的properties文件加载 使用:@PropertySource(value={"classpath:people.properti
实现消息队列的两种方式 apache activemq官方实例发送消息 直接在apache官网http://activemq.apache.org/download-archives.html下
常用配置 以下配置能使用File -> New Projects Settings -> Settings for New Projects进行配置的尽量用这个配置,因为这个配置是作用
摘要: 开发者开发部署web应用时通常使用tomcat服务器,很多初学者只懂得在开发工具上配置,但离开了开发工具,自己手动配置部署,并让一个项目跑起来,你会了吗。小编也遇到过这样的困扰。网上查找的
1. 字符串的翻转 利用切片 ? 1
cookie和session在java web开发中扮演了十分重要的作用,本篇文章对其中的重要知识点做一些探究和总结。 1.cookie存在于浏览器 随意打开一个网址,用火狐的调试工具,随意选取
1、使用内置的tomcat,通过java -jar的方式启动 比如:java -jar bms.jar 但是这种启动方式 一旦关闭控制台 或者crtl+c 退出 此时应用就关闭了
我是一名优秀的程序员,十分优秀!