在 sql server 2005的db环境中.
如何取得:字符 b 在字符串 abcefbpqbe 中最后一次出现的位置.
有什么函数可以取得这个位置吗?
DECLARE
@str
varchar
(
8000
),
@search_str
varchar
(
10
)
SELECT
@str
=
'
abcefbpqbbpe
'
,
@search_str
=
'
bp
'
SELECT
CASE
WHEN
CHARINDEX
(
@search_str
,
@str
)
=
0
THEN
0
ELSE
LEN
(
@str
)
-
CHARINDEX
(
REVERSE
(
@search_str
),
REVERSE
(
@str
))
-
LEN
(
@search_str
)
+
2
END
-----------------
declare
@s
as
varchar
(
20
)
set
@s
=
'
abcefbpqbe
'
select
最后一次出现的位置
=
len
(
@s
)
-
charindex
(
'
b
'
,
reverse
(
@s
))
+
1
/*
最后一次出现的位置
-----------
9
(1 行受影响)
*/
如何取得字符在字符串中最后一次出现的位置.
最新推荐文章于 2022-09-24 14:29:55 发布