0

次の変数があります。

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

列に「(Avegrage) で始まる」が含まれている場合は削除したいと思いますが、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%'

これにより、文字列の左端に「Avegrage」が含まれる列が検索されます。「%」はワイルドカード文字です。

于 2013-09-19T20:27:31.007 に答える
1

トリムまたは削除しようとしていますか? 除外する場合は、 @BWS の回答を参照してください。括弧の先頭を切り落とすと、最終的にProduct A:は ...

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