深入SQL截取字符串(substring与patindex)的详解

时间:2024-01-27 16:16:24 

首先学习两个函数
1.substring  返回字符、binary、text 或 image 表达式的一部分。
基本语法:SUBSTRING ( expression , start , length )
expression:字符串、二进制字符串、text、image、列或包含列的表达式
start:整数,指定子串的开始位置      注:SQL中"1"表示字符串中的第一个字符,而.NET中"0"表示第一个字符
length:整数,指定子串的长度(要返回的字符数或字节数)

2.patindex  返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。
基本语法:PATINDEX ( '%pattern%' , expression )
pattern:字符串。可以使用通配符,但 pattern 之前和之后必须有 % 字符(搜索第一个和最后一个字符时除外)。pattern 是短字符数据类型类别的表达式
expression:表达式,通常为要在其中搜索指定模式的列,expression 为字符串数据类型类别

下面结合上面的两个函数,截取字符串中指定的字符


declare @a varchar(50)
set @a='2009年7月15日星期五'
select substring(@a,1,4) --获取年份2009
declare @b int
set @b=patindex('%日%',@a) --获取'日'这个字符在字符串中的位置,即10
select substring(@a,6,@b-5) --获取日期'7月15日'


标签:sql,截取字符串
0
投稿

猜你喜欢

  • python根据文件名批量搜索文件

    2021-06-21 12:25:01
  • PHP字典树(Trie树)定义与实现方法示例

    2023-11-15 00:39:50
  • 聊一聊MyISAM和InnoDB的区别

    2024-01-21 00:55:33
  • 获得当前数据库对象依赖关系的实用算法

    2009-01-08 13:28:00
  • 在centos7中分布式部署pyspider

    2022-10-28 15:53:00
  • pytorch随机采样操作SubsetRandomSampler()

    2021-05-22 18:00:46
  • 在django中,关于session的通用设置方法

    2023-09-26 09:53:52
  • sql server利用不同语种语言显示报错错误消息的方法示例

    2024-01-23 17:40:39
  • asp无限级分类

    2007-09-16 18:06:00
  • Python实现Kmeans聚类算法

    2023-05-07 19:25:36
  • python实现差分隐私Laplace机制详解

    2022-01-08 16:37:41
  • Python实现深度遍历和广度遍历的方法

    2023-10-13 20:41:13
  • Pycharm连接远程服务器并远程调试的全过程

    2023-12-26 23:36:03
  • python按照list中字典的某key去重的示例代码

    2023-01-20 00:20:00
  • Linux(Redhat)安装python3.6虚拟环境(推荐)

    2022-06-08 23:34:13
  • 如何绕过ODBC直接访问SQL Server?

    2010-05-18 18:13:00
  • python多任务之协程的使用详解

    2023-12-29 16:38:23
  • webpack 打包压缩js和css的方法示例

    2023-07-02 05:18:32
  • perl命令行参数内建数组@ARGV浅析

    2022-11-04 06:58:47
  • REPAIR TABLE语法介绍——MySQL数据库

    2012-01-05 19:08:59
  • asp之家 网络编程 m.aspxhome.com