我在数据库表中有这个字符串字符,
select 'a:6:{s:12:"cfdb7_status";s:4:"read";s:9:"your-name";s:7:"testing";s:10:"your-email";s:18:"tsting!@testng.com";s:10:"your-phone";s:9:"098098098";s:12:"your-message";s:20:"dfkjadsfh aljsdfasdf";s:20:"g-recaptcha-response";s:441:"03AHhf_52xlOGxCbcOqRtuiQABfbv9MjTpQ1bMW1gkaE8I1Ld9NIFhi0yVnh9FzqZDTLizhuahQyOIcofDPkSvYYT6gPZz7nCP2fU853pljiUgQjFZNZxTU1rzhm4gGMpuWJi4YXzKkKpU8KMfzkCngugZv3MlUl6VYN73W6OLfNDRfyfiQmVsJqk0IQqetBo2cnuMdPw_TxPNdW99bu-cnuv77ua0PgyDaqHeJwzKNrK4bHP797AyJdsvTaacCdwi_Pt-cbyQcnzRDsznow1VaiIjf1_eJd8_QpL2wAgFJsye5wb3sYnrpexat6ymMHZrDchhHNKTSobWySjQd3UNEpF3NH73wV2RwpYYuJp2h8sd7xLE9JgKkV0DxK7KLfqS7Oy22REdsKILkI-iqfgaV71wFUWrcYcmIm-JAJqVm-CoR4JB-rOZcSk";}'
如何才能通过查询获取上述某个字符之间的电子邮件地址 请帮帮我!
答案 0 :(得分:0)
试试这个。
DECLARE @str VARCHAR(500)
SET @str =
'a:6:{s:9:"your-name";s:7:"testing";s:10:"your-email";s:18:"**tsting!@testng.com**";s:10:"your-phone";s:9:"25625222";}'
SELECT Substring(@str, Patindex('%"**%', @str) + 3, Patindex('%**%',
Substring(@str, Patindex('%"**%', @str) + 4, Len(@str)))) AS Email
输出
+--------------------+
| Email |
+--------------------+
| tsting!@testng.com |
+--------------------+