我有一个包含varchar(300)
(它包含一些网址)列的表格,我需要将此列的一些值提取到新的integer
列。
来源栏目:
https://my_domain.com/?item1=value1&item2=value2&searching_field=int_value&item4=value4
我需要找到字符串 searching_field=int_value
并将int_value
插入表格。
UPD 即可。我发现了一个很好的工具REGEXP_SUBSTRING
,我试图使用如下:
SELECT REGEXP_SUBSTR(col_name, 'searching_field=[0-9]+', charindex('searching_field=', col)) as col from my_table
答案 0 :(得分: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