0

我有一个包含varchar(300)(它包含一些 URL)列的表,我需要将此列的一些值提取到一个新integer列中。

来源栏:

https://my_domain.com/?item1=value1&item2=value2&searching_field=int_value&item4=value4

我需要找到字符串searching_field=int_value并插入int_value到表中。

升级版。我找到了一个很好的工具REGEXP_SUBSTRING,我正在尝试使用如下:

SELECT REGEXP_SUBSTR(col_name, 'searching_field=[0-9]+', charindex('searching_field=', col)) as col from my_table
4

1 回答 1

1
DECLARE @occur_start INT;
DECLARE @occur_end INT;

CREATE TABLE tempdb..#Temp
(col varchar(300), IntVal int)

INSERT INTO tempdb..#Temp
select col, SUBSTRING(col, CHARINDEX('searching_field=', col), CHARINDEX('&item4=value4', col) - CHARINDEX('searching_field=', col)-1) IntValue
FROM YourTable

INSERT INTO YourOtherTable
SELECT IntValue FROM #Temp
于 2015-01-12T16:22:34.817 回答