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)
相关推荐
·云扬·11 分钟前
利用Orchestrator Hook实现MySQL高可用切换与VIP管理
android·数据库·mysql
愤怒的苹果ext1 小时前
Flink CDC MySQL同步到Elasticsearch
mysql·elasticsearch·flink·cdc·同步数据
小鸡脚来咯1 小时前
MySQL索引优化
sql·mysql
YIN_尹2 小时前
【MySQL】数据库基础
数据库·mysql·adb
秃狼2 小时前
mysql explain 使用入门
数据库·mysql
QT 小鲜肉2 小时前
【Linux命令大全】003.文档编辑之csplit命令(实操篇)
linux·运维·服务器·chrome·mysql
程序猿20233 小时前
MySQL的锁-全局锁及表锁
数据库·mysql
m0_598177233 小时前
MYSQL(进阶--1)--
数据库·mysql
打不了嗝 ᥬ᭄3 小时前
【MySQL】索引和事务
数据库·mysql
java干货4 小时前
拒绝应用层循环!用 MySQL 8.0 JSON_TABLE 一键把 JSON 数组“变”成表
数据库·mysql·json