Я надеюсь найти способ извлечь из espn
[email protected]
Извлечение домена текст из EmailAddress
Я работаю в Microsoft SQL Server. Кто-нибудь знает, как написать substring
, чтобы выполнить это?
Спасибо!
Я надеюсь найти способ извлечь из espn
[email protected]
Извлечение домена текст из EmailAddress
Я работаю в Microsoft SQL Server. Кто-нибудь знает, как написать substring
, чтобы выполнить это?
Спасибо!
Это должно работать:
select SUBSTRING(
@email, --input string
charindex('@', @email) + 1, --character just after the @
charindex('.', @email, charindex('@', @email)) - charindex('@', @email) - 1 --distance between @ and the first . following it
)
Вы ищете это.
Select substring(@email,charindex('@', @email)+1,
charindex('.',right(@email,len(@email) - charindex('@', @email)))-1)
Адрес электронной почты может содержать .
несколько раз до и после @
, это должно возвращать первую часть домена после @
попробовать это
select SUBSTRING(
'[email protected]', --input string
charindex('@', '[email protected]') + 1,
(len('[email protected]')-charindex('@', '[email protected]'))-4
)
DECLARE @emailAddress TABLE (emailAddress VARCHAR(255))
INSERT @emailAddress (emailAddress)
VALUES ('[email protected]'),
('[email protected]'),
('notanemailaddress')
SELECT IIF(emailAddress LIKE '%@%.%', -- Confirm it has valid structure
SUBSTRING(emailAddress,
CHARINDEX('@',emailAddress)+1,
CHARINDEX('.',emailAddress,CHARINDEX('@',emailAddress))-(CHARINDEX('@',emailAddress)+1)), --Extract the domain
NULL) -- Provide default value if not an emailAddress
AS emailDomain
FROM @emailAddress
Это объясняет для значений, которые недействительны emailAddresses, и возвращает NULL
(или все, что вы там помещаете), когда недопустимая оценка e встречается.
Должен признаться, что мне любопытно, почему это полезно? – DavidG