What i want to do is extract an email from the FROM field which is stored in the following format
"vini katyal" <vinikatyal@yah oo.com> varchar field
"vini katyal" <vinikatyal@yah oo.com> varchar field
SELECT SUBSTRING(tblContacts.fldEmail, tA.digit + 1, tB.digit - tA.digit - 1)
FROM tblContacts, tblDigits tA, tblDigits tB
WHERE tblContacts.fldEmail IS NOT NULL
AND
tB.digit - tA.digit > 0
AND
tB.digit - tA.digit < LEN(tblContacts.fldEmail)
AND
SUBSTRING(tblContacts.fldEmail, tA.digit, 1) = '<'
AND
SUBSTRING(tblContacts.fldEmail, tB.digit, 1) = '>';
Declare @str varchar(50) = '"vini katyal" <vinikatyal@yahoo.com>'
Select
Name = Left(@str, PATINDEX('%<%',@str)-1)
,Domain = Right(@str,Len(@str)-PATINDEX('%<%',@str)+1)
,Email = @str
Select
Name = Left(@str, CHARINDEX('<',@str)-1)
,Domain = Right(@str,Len(@str)-CHARINDEX('<',@str)+1)
,Email = @str
Select
Name = REVERSE(STUFF(REVERSE(@str),1,PATINDEX('%<%',REVERSE(@str)),''))
,Domain = STUFF(@str,1,PATINDEX('%<%',@str)-1,'')
,Email = @str
Select
Name = SUBSTRING(@str,1,CHARINDEX('<',@str,1)-1)
,Domain = Right(@str,Len(@str)-CHARINDEX('<',@str)+1)
,Email = @str
Name Domain Email "vini katyal" <vinikatyal@yahoo.com> "vini katyal" <vinikatyal@yahoo.com>
Comment