SQL SERVER 字符串函数 PATINDEX()

定义:

PATINDEX()返回模式在指定表达式中第一次出现的起始位置;如果在所有有效的文本和字符数据类型中都找不到该模式,则返回零。

语法:

PATINDEX ( '%pattern%' , expression )

参数:

pattern:包含要查找的序列的字符表达式。 可以使用通配符;但 pattern 之前和之后必须有 % 字符(搜索第一个或最后一个字符时除外) 。 pattern 是字符串数据类型类别的表达式 。 pattern最多包含 8000 个字符 。

expression 是字符串数据类型类别的表达式 。

返回值:

bigint(如果 expression 的数据类型为 varchar(max) 或 nvarchar(max));否则为 int 。

原文表述:“如果 pattern 或 expression 为 NULL,则 PATINDEX 返回 NULL 。”是部分错误的。

正确表述:

如果 pattern 为 NULL,则 PATINDEX 返回 NULL 。

如果 expression 为 NULL,则SSMS会报错 。

PATINDEX 的起始位置为 1。

例:

※不区分大小写

 

参考原文地址:https://docs.microsoft.com/zh-cn/sql/t-sql/functions/patindex-transact-sql?view=sql-server-2017

声明:本文是本人查阅网上及书籍等各种资料,再加上自己的实际测试总结而来,仅供学习交流用,请勿使用于商业用途,任何由此产生的法律版权问题概不负责,谢谢。

转载于:https://www.cnblogs.com/feiyu721/p/11249025.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值