我在表中有一组用于一组用户的数据。数据为JSON格式,我必须从那里提取数据。
有一个数据集,电子邮件包含该用户的多封电子邮件。有些用户有4封电子邮件,而其他用户没有3、2、1甚至没有。
数据的格式为:
{"androidId":"49ca9d8934c67a03","deviceId":"863177039120979","emails":"xyzabcdef123@gmail.com,helloworld56@gmail.com,ihaveemail@gmail.com,gojkl8823@gmail.com","manufacturer":"LENOVO","name":"Lenovo A6020a40","networkOperator1Id1":"405854"}
所以首先我要从JSON提取数据,得到的结果为
emails:xyzabcdef123@gmail.com,helloworld56@gmail.com,ihaveemail@gmail.com,gojkl8823@gmail.com
但是现在我需要将这些电子邮件相应地分为几列。
在这里,决赛桌应该是
我已经尝试了一些方法,但没有达到目标。有人可以帮我吗?
答案 0 :(得分:0)
尝试使用string_Split函数
select STRING_SPLIT ( Emailcolumn , ',') from email
ex
DECLARE @emails NVARCHAR(400) = 'me@aol.com,you@prodigy.com,him@zebra.net,that@compuserve.com,her@juno.com'
SELECT value as EmailAddress
FROM STRING_SPLIT(@emails , ',')
WHERE RTRIM(value) <> '';