0

我有以下变量:

DECLARE @test nvarchar(100)
SET @test =  'Prodcut A (Avegrage: 1.000)'

如果该列包含以“(平均)开头,我想删除我确定我必须使用 SUBSTRING 和 CHARINDEX 但不知道如何使用。有人可以帮我吗?

SELECT @test as product, left(@test, charindex('(Avegrage', @test) - 2) AS LeftString


product                     Product Name
Prodcut A (Avegrage: 1.000) Prodcut A   
4

2 回答 2

2

试试这个(对于 SQL-SERVER):

SELECT <something>
FROM <sometable>
WHERE <something> like 'Avegrage%'

这将查找将“平均”作为字符串最左侧部分的列。'%' 是通配符。

于 2013-09-19T20:27:31.007 回答
1

您是要修剪还是消除?如果消除,请参阅@BWS 的回答。如果修剪掉括号的开头,那么你最终会得到Product A:then ...

DECLARE @b NVARCHAR(100)
SET @b = 'Prodct A: (Average)'
SELECT SUBSTRING(@b,1,(CHARINDEX('(',@b)-1))
于 2013-09-19T20:34:27.977 回答