mysql 字符串分割

目录

前言

substring_index

正向截取字符串

bash 复制代码
mysql> select substring_index('www.baidu.com','.',1);
+----------------------------------------+
| substring_index('www.baidu.com','.',1) |
+----------------------------------------+
| www                                    |
+----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',2);
+----------------------------------------+
| substring_index('www.baidu.com','.',2) |
+----------------------------------------+
| www.baidu                              |
+----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',3);
+----------------------------------------+
| substring_index('www.baidu.com','.',3) |
+----------------------------------------+
| www.baidu.com                          |
+----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',4);
+----------------------------------------+
| substring_index('www.baidu.com','.',4) |
+----------------------------------------+
| www.baidu.com                          |
+----------------------------------------+
1 row in set (0.02 sec)

逆向截取字符串

bash 复制代码
mysql> select substring_index('www.baidu.com','.',-1);
+-----------------------------------------+
| substring_index('www.baidu.com','.',-1) |
+-----------------------------------------+
| com                                     |
+-----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',-2);
+-----------------------------------------+
| substring_index('www.baidu.com','.',-2) |
+-----------------------------------------+
| baidu.com                               |
+-----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',-3);
+-----------------------------------------+
| substring_index('www.baidu.com','.',-3) |
+-----------------------------------------+
| www.baidu.com                           |
+-----------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index('www.baidu.com','.',-4);
+-----------------------------------------+
| substring_index('www.baidu.com','.',-4) |
+-----------------------------------------+
| www.baidu.com                           |
+-----------------------------------------+
1 row in set (0.02 sec)

substring_index 特性

  1. substring_index 是 substring 的升级版,它是通过字符串分割后的数组的索引换算成截取位置进行字符串截取。
  2. substring_index 不能直接获取字符串分割后的数组中的某项,可以与其它函数组合后实现。

字符串分割

bash 复制代码
mysql> select substring_index('www.baidu.com', '.', 1);
+------------------------------------------+
| substring_index('www.baidu.com', '.', 1) |
+------------------------------------------+
| www                                      |
+------------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index(substring_index('www.baidu.com', '.', 2), '.', -1);
+--------------------------------------------------------------------+
| substring_index(substring_index('www.baidu.com', '.', 2), '.', -1) |
+--------------------------------------------------------------------+
| baidu                                                              |
+--------------------------------------------------------------------+
1 row in set (0.02 sec)

mysql> select substring_index(substring_index('www.baidu.com', '.', 3), '.', -1);
+--------------------------------------------------------------------+
| substring_index(substring_index('www.baidu.com', '.', 3), '.', -1) |
+--------------------------------------------------------------------+
| com                                                                |
+--------------------------------------------------------------------+
1 row in set (0.02 sec)
相关推荐
KellenKellenHao4 小时前
MySQL数据库主从复制
数据库·mysql
一只fish5 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(16)
数据库·mysql
叁沐6 小时前
MySQL 07 行锁功过:怎么减少行锁对性能的影响?
mysql
Java烘焙师7 小时前
架构师必备:业务扩展模式选型
mysql·elasticsearch·架构·hbase·多维度查询
飞翔的佩奇7 小时前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
@Ryan Ding7 小时前
MySQL主从复制与读写分离概述
android·mysql·adb
feifeigo12314 小时前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
A__tao19 小时前
一键将 SQL 转为 Java 实体类,全面支持 MySQL / PostgreSQL / Oracle!
java·sql·mysql
一只fish19 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(17)
数据库·mysql
叁沐21 小时前
MySQL 06 全局锁和表锁:给表加个字段怎么有这么多阻碍?
mysql