首页 > 数据库 >MySql 中 SUBSTRING_INDEX()用法

MySql 中 SUBSTRING_INDEX()用法

时间:2024-01-10 14:11:07浏览次数:33  
标签:profile INDEX MySql 指定 SUBSTRING 分隔符 字符串

SUBSTRING_INDEX() 函数用于从一个指定分隔符分隔的字符串中提取子串。它返回一个字符串,包含在原始字符串中出现在指定分隔符之前或之后的所有字符。

以下是 SUBSTRING_INDEX() 函数的语法:

SUBSTRING_INDEX(str, delim, count)

其中,str 是要分割的字符串;delim 是指定的分隔符;count 是指定分隔符出现的次数,表示要返回的子串应包含多少个分隔符。

例如,假设你有一个名为 "users" 的表,其中包含一个 "profile" 列,该列包含逗号分隔的用户详细信息。你可以使用以下查询来从 "profile" 列中提取年龄信息:

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(profile, ',', 3), ',', -1) AS age
FROM users;

在上面的查询中,首先使用 SUBSTRING_INDEX(profile, ',', 3) 获取字符串中前三个逗号分隔的子串,然后使用 SUBSTRING_INDEX() 函数的第二个参数设置为 ',' 和 -1,获取分隔符最后一次出现后的所有字符。这样就可以获取年龄信息。

需要注意的是,如果没有找到指定的分隔符,SUBSTRING_INDEX() 函数将返回整个字符串。

标签:profile,INDEX,MySql,指定,SUBSTRING,分隔符,字符串
From: https://www.cnblogs.com/Linzj5950/p/17956371

相关文章

  • centos安装mysql8,银河麒麟安装mysql8,arm(aarch)架构,rpm包,完全离线安装
    作者主页:https://www.cnblogs.com/milkbox/参考:软件包下载:https://rpmfind.net/linux/rpm2html/search.phpMySQL::DownloadMySQLCommunityServer主要教程:十二、MySQL8.0.32离线安装(适用于Linux-CentOS7)_linux离线安装libaio-CSDN博客本教程以银河麒麟v10为例注......
  • ubuntu安装mysql8,debian安装mysql8,linux安装mysql8,x86_64架构,deb包
    作者主页:https://www.cnblogs.com/milkbox参考:修改大小写:MySQL8.0安装后更改不区分大小写!包你必生效!_mysql8.0不区分大小写-CSDN博客整个安装过程建议在root权限下进行。需要网络来下载相关依赖,如果你的系统已经存在相关以来,那么就可以离线安装。下载与解压去官网下载mys......
  • 6 修改表 -- MySQL数据库
    在大多数情况下,表结构更改时都使用altertable语句。1.修改表类型#语法mysql>altertable表名modify[column]列定义[first|after列名];实例:修改表emp的ename字段,将varchar(10)改为将varchar(20)mysql>altertableempmodifyenamevarchar(20);2.......
  • mysql_native_password 身份验证插件在未来版本中移除
    自MySQL8.0.34起,mysql_native_password身份验证插件已被弃用,并可能在MySQL的未来版本中移除。移除意味着:Javajdbc配置文件以及后端大数据的账号密码,必须更改为caching_sha2_password认证模式,否则无法连接MySQL数据库。如果业务系统今后升级MySQL8.0,这块需要加以适配。如果......
  • 实战-Docker 安装 MySQL
    使用Docker命令安装镜像官方文档:https://hub.docker.com/_/mysqlrm-rf/opt/mysqlmkdir-p/opt/mysql/data/opt/mysql/init/opt/mysql/confdockerrun-d\--namemysql\-p3306:3306\-eTZ=Asia/Shanghai\-eMYSQL_ROOT_PASSWORD=123456\-v/o......
  • 两个Mysql唯一索引的交换: 避免重复索引 Duplicate entry '3' for key 'priority_UNIQ
    需求我做了一个排行榜,但是主键是pid,不是排名,排名作为唯一索引,两个人排名交换,只需要交换排名唯一索引值即可.但是直接单独更新提示错误:Duplicateentry'3'forkey'priority_UNIQUE'方法本来希望可以在一条SQL语句中交换两个唯一索引值,但是发现这是不可能的,因为值......
  • Mysql数据同步至Elasticsearch
    方案对比鉴于Canal是一个基于MySQL二进制日志的高性能数据同步系统,go-mysql-elasticsearch是一个第三方插件的,虽然都可以同步mysql数据到es,由于es官方文档推荐使用canal工具来同步数据,因此主要将Canal的使用方式提供给用户。核心概念名词解释mysqlbinlogMyS......
  • N天爆肝数据库——MySQL(3)
    (N天爆肝数据库——MySQL(3))本篇文章,主要对DCL、函数、约束和多表查询进行知识总结和学习。期待和大家一起学习进步。DCLDCL-介绍数据控制语言,用来管理数据库用户、控制数据库的访问权限。DCL-管理用户查询用户USEmysql;SELECT*FROMuser;创建用户CREATEUSER......
  • mysql8.0触发器
    1、触发器概述MySQL从5.0.2版本开始支持触发器。MySQL的触发器和存储过程一样,都是嵌入到MySQL服务器的一段程序。触发器是由事件来触发某个操作,这些事件包括INSERT、UPDATE、DELETE事件。所谓事件就是指用户的动作或者触发某项行为。如果定义了触发程序,当数据库执行这些语句......
  • mysqlshell备份脚本
    非常简单的备份脚本[root@mydb01~]#catmysqlsh_backup.sh#!/bin/bashMIP=192.168.5.130MU=rootMp=rootMP=3306backup_dir=/mysql/backup/mysqlbackup"_"$MIP"_"`(date+%Y%m%d)`/mysql/jerry/mysqlshell/bin/mysqlsh-h$MIP-u$MU-p$Mp-P$MP--util......