我想从我的字符串中删除特定的值。我的字符串可以是任何长度。例如
字符串1:
{“ ABC”:1,“ ABC_DT”:-1,“ ABC_DBQty”:0,“ ABC_DSQty”:0,“ ABC_LMT”:1,“ ABC_DT”:-1,“ CTSD”:“ TEST”, “ SD”:1,“ TE”: 23 }
字符串2:
{“ ABC”:1,“ ABC_DT”:-1,“ ABC_DBQty”:0,“ ABC_DSQty”:0,“ ABC_LMT”:1,“ ABC_DT”:-1,“ CTSD”:“ TEST”, “ TE”: 23 }
我想要这个23。如何在SQL Server 2014中获取此信息?
答案 0 :(得分:1)
解决方案:
DECLARE @str VARCHAR(MAX) = '{"ABC":1,"ABC_DT":-1,"ABC_DBQty":0,"ABC_DSQty":0,"ABC_LMT":1,"ABC_DT":-1,"CTSD":"TEST","TE":23}'
,@posA INT = 0
,@posB INT = 0
,@res VARCHAR(MAX) = ''
SET @posA = PATINDEX('%"TE":%}', @str) +5;
SET @posB = CHARINDEX('}', @str, @posA+1);
SET @res = SUBSTRING (@str ,@posA, @posB-@posA )
SELECT @res AS 'STR_res', CAST(@res AS INT) AS 'INT_res'
答案 1 :(得分:1)
df = df.join(pd.DataFrame(L, index=df.index))
print (df)
index source timestamp value bike1 bike2 car1 plane1 plane2 plane3
0 1 car 1 [98] NaN NaN 98 NaN NaN NaN
1 2 bike 2 [98, 100] 98 100 NaN NaN NaN NaN
2 3 car 3 [65] NaN NaN 65 NaN NaN NaN
3 4 bike 4 [100, 120] 100 120 NaN NaN NaN NaN
4 5 plane 5 [20, 12, 30] NaN NaN NaN 20 12 30
答案 2 :(得分:0)
使用JSON_VALUE函数:
(不幸的是自2016年以来可用)