SQL使用文本的一部分来更新另一个字段

时间:2017-10-05 10:05:15

标签: tsql

我的数据库中有一个名为filename的字段 - 它将始终遵循以下格式 - [BatchId] [CompanyId] [FinancialPeriod]

一个例子 001_100_201710

我想要做的是从该文本字符串中获取[BatchId]所以在第一个得分之前的任何内容并更新数据库中另一个名为Batch的字段。不知道如何获得批次ID。

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以使用类似的内容进行拆分

DECLARE @filename as varchar(100)
set @filename = '001_100_201710' 

DECLARE @index INT 
set @index = CHARINDEX('_', @filename) 
select SUBSTRING(@filename, 0, @index ) BatchId