MS SQL语句,哪个函数可以计算一个字符串在另一个字符串出现的位置,比方说: 'AB'在'CDEAB'的位置是4,类似VB的INSTRT和EXCEL的MID

李迎春82 2007-12-01 04:37:04
MS SQL语句,哪个函数可以计算一个字符串在另一个字符串出现的位置,比方说: 'AB'在'CDEAB'的位置是4,类似VB的INSTRT和EXCEL的MID
...全文
177 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pt1314917 2007-12-02
  • 打赏
  • 举报
回复
....
小楼连这也知道?呵呵
Limpire 2007-12-02
  • 打赏
  • 举报
回复
咿?
上面的patindex怎么没有变色呢??
---------------
和patindex()怎么会变色?
好比 ABCpatindex() 也不会变色一样。
hui_hui_2007 2007-12-01
  • 打赏
  • 举报
回复

declare @str varchar(10)
declare @str2 varchar(10)
set @Str='ab'
set @str2='fdksafab'
select charindex(@Str,@Str2) as 第一次出现位置
/*
第一次出现位置
-----------
7

(所影响的行数为 1 行)
*/
pt1314917 2007-12-01
  • 打赏
  • 举报
回复
咿?
上面的patindex怎么没有变色呢??
pt1314917 2007-12-01
  • 打赏
  • 举报
回复

charindex()和patindex()都可以
select charindex('AB','DsdAB')
select patindex('%AB%','DsdAB')
areswang 2007-12-01
  • 打赏
  • 举报
回复
CHARINDEX ( expression1 , expression2 [ , start_location ] )

expression1

一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。

expression2

一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。

start_location

在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。
sunhonglei2004 2007-12-01
  • 打赏
  • 举报
回复
declare @a char(10),@b char(10)
set @a='def'
set @b='abcdef'
select charindex('def','abcdef')

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧