SQL语句截取字段某指定字符的前半段/后半段内容

这篇具有很好参考价值的文章主要介绍了SQL语句截取字段某指定字符的前半段/后半段内容。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近项目中遇到一个小问题:
需要从数据库中取出对应数据,并根据某个字段中的前半段内容进行排序,搜索资料后得以解决,现将解决方法记录如下:

最初的查询SQL:

SELECT file_name,sort
FROM base_annexesfile
ORDER BY file_name,sort

结果截图:
SQL语句截取字段某指定字符的前半段/后半段内容

截取file_name字段中前半段数据的SQL:

SELECT file_name,
	  ,SUBSTRING_INDEX(file_name,'_',1) AS type
	  ,sort
FROM base_annexesfile
ORDER BY file_name,sort

结果截图:
SQL语句截取字段某指定字符的前半段/后半段内容

按照截取的file_name字段的前半段数据及sort字段共同排序的SQL:

SELECT file_name,
	  ,SUBSTRING_INDEX(file_name,'_',1) AS type
	  ,sort
FROM base_annexesfile
ORDER BY SUBSTRING_INDEX(file_name,'_',1),sort

结果截图:
SQL语句截取字段某指定字符的前半段/后半段内容

分别截取file_name字段的前半段和后半段字符作为新的字段显示的SQL:

SELECT file_name,
	  ,SUBSTRING_INDEX(file_name,'_',-1) AS type1
	  ,SUBSTRING_INDEX(file_name,'_',1) AS type2
	  ,sort
FROM base_annexesfile
ORDER BY SUBSTRING_INDEX(file_name,'_',1),sort

结果截图:
SQL语句截取字段某指定字符的前半段/后半段内容

总结:

1、MySQL的写法:

(1)获取“_”字符后面的字符串:
SUBSTRING_INDEX(字段名,'_',-1)
(2)获取“_”字符前面的字符串:
SUBSTRING_INDEX(字段名,'_',1)

2、SQL Server的写法:

--SUBSTRING('列名',起始位数,要取的字符串长度)
SUBSTRING(expression,start,length)           
(1)获取“_”字符前面的字符串:
SUBSTR(字段名, INSTR(TCID_GK,'_',1,1)+1)
(2)获取“_”字符后面的字符串:
SUBSTRING(TCID_GK,CHARINDEX('_',TCID_GK)+1,len(TCID_GK)-charindex('_',TCID_GK))

3、oracle的写法:

SUBSTR(TCID_GK,1, INSTR(TCID_GK,'_')-1)
(1)获取“_”字符后面的字符串:
SUBSTR(TCID_GK, INSTR(TCID_GK,'_',1,1)+1)
(2)获取“_”字符前面的字符串:
SUBSTR(TCID_GK,1, INSTR(TCID_GK,'_')-1)

参考链接:https://zhuanlan.zhihu.com/p/355927358文章来源地址https://www.toymoban.com/news/detail-432778.html

到了这里,关于SQL语句截取字段某指定字符的前半段/后半段内容的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • chatgpt赋能python:Python字符串截取指南:如何截取指定位置字符串

    在Python中,字符串截取是一项非常常见的操作。当我们需要从一个字符串中提取特定位置的字符或子串时,我们可以使用Python内置的截取函数和切片操作来实现。在本文中,我们将介绍如何在Python中截取指定位置字符串,并提供一些有用的技巧和示例来帮助你更好地理解这一

    2024年02月08日
    浏览(50)
  • Hive截取指定位子或字符后面的数据

    1、样例数据 Hive.Spark.Flink.Hadoop Java.Python.Scala 2、题目要求 截取最后一个’.\\\'后面的数据 3、结果预览 Hadoop Scala 方法1 使用substr()函数,在通过instr()函数找到结束位子,为了保证每次截取的都是最后一个’.\\\'后面的数据,这里使用字符串反转函数reverse()。 答案: 方法2 使用reg

    2023年04月13日
    浏览(20)
  • Oracle 截取指定字符到目标串的末尾

    SQL:  解析:   效果:  

    2024年02月15日
    浏览(23)
  • SQL Server截取字符串函数操作

    目录 1、SUBSTRING()函数 2、LEFT()函数  3、RIGHT()函数  4、CHARINDEX()函数  5、LEN函数 1、SUBSTRING()函数         含义:从指定位置开始截取指定数量的字符。         使用:SUBSTRING( 原字符 , 截取字符的起始位置 , 截取字符数量 )         举例:                 1、 截取字

    2024年02月01日
    浏览(45)
  • mysql 更新指定字段部分字符替换

    可以使用 MySQL 的 REPLACE 函数来替换字符串中的一部分字符,然后再将更新后的字符串保存回数据库。 REPLACE 函数的语法如下: REPLACE(str, find_string, replace_with) 其中,str 是待替换的字符串,find_string 是需要被替换的子字符串,replace_with 是用来替换的新字符串。该函数会在 str

    2024年02月12日
    浏览(40)
  • sql语句两个字段合并或者两个字段拼接显示

    mysql 使用 concat函数 小栗子: sql server 连接字段,直接使用 + 号,和java字符串拼接一样 小栗子: oracle 数据库 可以使用 || ,也可以使用 concat函数 小栗子: ACCESS数据库连接字段,使用 + 号,他与sql server 一样的 小栗子:

    2024年02月11日
    浏览(34)
  • mysql表添加字段sql语句

    使用ALTER TABLE向MySQL数据库的表中添加字段 语法规则 语句内容: table_name :表名; column_name:需要添加的字段名; VARCHAR(100):字段类型为varchar,长度100; DEFAULT NULL:默认值NULL; AFTER old_column:新增字段添加在old_column字段后面,不写会默认表尾部; 例子:

    2024年02月10日
    浏览(34)
  • SQL语句学习笔记(对库、表、字段、的操作)

    查看mysql的状态 status 启动、停止 mySQL服务 图像界面方法: dos窗口执行:services.msc 控制面板–管理工具–服务 命令行方法: 启动: net start mysql80 停止: net stop mysql80 添加环境变量: 在path编辑:添加路径:C:Program FilesMySQLMySQL Server 8.0bin cmd登录:mysql -h localhost -u root -p 输

    2024年02月02日
    浏览(25)
  • SQL Server创建数据表,新增字段的SQL语句

    1、创建数据库 语法:CREATE DATABASE 数据库名称 2、创建数据表  语法: USE suntest   create table 仓库   (   仓库编号 int ,    仓库号 varchar(50) ,    城市 varchar(50) ,    面积 int   )   create table 仓库1   (   仓库编号 int not null ,    仓库号 varchar(50) not null,    城市 varchar(50) not null

    2024年02月10日
    浏览(48)
  • 使用navicat利用sql语句查询表所有字段的字段名,类型,长度。

    想要在navicat下,用sql语句查询一个表的所有字段和其相关信息。 打开所需要查询的表的数据库 查新建询 把下面的sql语句复制粘贴到新建的查询编辑器中并修改库名和表 这样表的相关信息就会显示出来了,将其选中,点击鼠标右键,——复制为——制表符分隔值(字段名和

    2023年04月08日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包