我有一个问题。从表中选择信息
在表中我有例如
591|15-MA TEST
我想要检索15-MA TEST
。
我试图混合substring
,charindex
,left
- 没有用。
任何人都可以帮助我吗?
我有一个问题。从表中选择信息
在表中我有例如
591|15-MA TEST
我想要检索15-MA TEST
。
我试图混合substring
,charindex
,left
- 没有用。
任何人都可以帮助我吗?
所以,你需要获得开始的位置。你可以通过使用CHARINDEX然后加1.然后你可以使用SUBSTRING。
(这是假设该字符串将永远有一个 “|” 这是分隔符。)
DECLARE @s varchar(50) SET @s = '591|15-MA TEST'
SELECT CHARINDEX('|', @S) AS Position,
SUBSTRING(@s, CHARINDEX('|', @S) + 1, len(@s)) AS SelectionText
成绩
4 15-MA TEST
declare @char varchar(100)
select @char = '591|15-MA TEST'
select SUBSTRING(@char, CHARINDEX('|',@char,1)+1 , LEN(@char))
select substring('591|15-MA TEST', CHARINDEX('|', '591|15-MA TEST')+1, LEN('591|15-MA TEST'));
如果你是试图得到'|'之后的任何东西字符,那么你想这样的事情:
SELECT
RIGHT([Column Name],LEN([Column Name]) - CHARINDEX('|', [Column Name]))
FROM
[Table Name]
需要更多的解释。最好发布一些你尝试过的代码,这也有助于我们更好地理解。给出一些示例表或字符串变量,并带有预期的结果。 –
你尝试过replace()吗? –
你是什么意思*正常的SQL * - 是SQL Server **异常**?!?!?!?!? –