Extraiga el dominio de correo electrónico de la tabla en SQL Server

Introducción :
como DBA, es posible que se encuentre con una solicitud en la que necesite extraer el dominio de la dirección de correo electrónico, la dirección de correo electrónico que se almacena en la tabla de la base de datos. En caso de que desee contar los nombres de dominio más utilizados de las direcciones de correo electrónico en una tabla determinada, puede contar la cantidad de dominios extraídos del correo electrónico en SQL Server como se muestra a continuación.

Las consultas SQL se pueden utilizar para extraer el dominio de la dirección de correo electrónico.
Vamos a crear una tabla llamada “ email_demo ” –

create table (ID int, Email varchar (200));

Insertar valores en la tabla email_demo –

insert into email_demo values(
(1, 'Sam@gfg.com'), (2, 'Khushi@gfg.com'),
(3, 'Komal@gfg.org'), (4, 'Priya@xyz.com'),
(5, 'Sam@xyz.com'), (6, 'Krish@xyz.com'),
(7, 'Neha@gfg.com'), (8, 'Pam@gfg.com'),
(9, 'Mohan@abc.com'), (10, 'Ankit@mno.com'),
(11, 'Kumari@gfg.com'), (12, 'Hina@abc.com'),
(13, 'Jaya@mno.com'), (14, 'Piyush@abc.com'),
(15, 'Khushi@xyz.com'), (16, 'Mona@gfg.org'),
(17, 'Roza@abc.com'));

Visualización del contenido de la tabla –

select * from email_demo;
IDENTIFICACIÓN Correo electrónico
1 Sam@gfg.com
2 Khushi@gfg.com
3 Komal@gfg.org
4 Priya@xyz.com
5 Sam@xyz.com
6 Krish@xyz.com
7 Neha@gfg.com
8 pam@gfg.com
9 Mohan@abc.com
10 Ankit@mno.com
11 Kumari@gfg.com
12 Hina@abc.com
13 Jaya@mno.com
14 Piyush@abc.com
15 Khushi@xyz.com
dieciséis Mona@gfg.org
17 Roza@abc.com

1. Extraiga el dominio del correo electrónico en SQL Server:
en el siguiente ejemplo, usaremos la función SUBSTRING para seleccionar la string después del símbolo @ en cada uno de los valores.

SQL Extraer dominio del correo electrónico –

SELECT ID,
SUBSTRING ([Email], CHARINDEX( '@', [Email]) + 1,
LEN([Email])) AS [Domain]
FROM [email_demo];

PRODUCCIÓN :

IDENTIFICACIÓN Dominio
1 gfg.com
2 gfg.com
3 gfg.org
4 xyz.com
5 xyz.com
6 xyz.com
7 gfg.com
8 gfg.com
9 abc.com
10 mno.com
11 gfg.com
12 abc.com
13 mno.com
14 abc.com
15 xyz.com
dieciséis gfg.org
17 abc.com

Se acercó usado:

  • Aquí asignamos la fuente como nuestro nombre de columna ‘Correo electrónico’ en la función SUBCADENA.
  • A continuación, usamos la función CHARINDEX para encontrar el símbolo @ y luego agregamos 1, de modo que el punto de partida estará después del símbolo @.
  • Luego, usamos la función LEN para especificar el valor final.

2. Cuente la cantidad de dominios extraídos del correo electrónico en SQL Server:
Enfoque 1: consulta SQL para contar la cantidad de registros para extraer el nombre de dominio del correo electrónico:

SELECT RIGHT ([Email],
LEN([Email]) - CHARINDEX( '@', [Email])) AS [Domain],
COUNT(*) AS [Total Number of Domain]
FROM [email_demo]
WHERE LEN([Email ]) > 0
GROUP BY RIGHT([Email],
LEN([Email]) - CHARINDEX( '@', [Email]));

PRODUCCIÓN :

Dominio Número total de dominio
abc.com 4
gfg.com 5
gfg.org 2
mno.com 2
xyz.com 4

Enfoque 2: consulta SQL para contar el número de registros para extraer el nombre de dominio del correo electrónico:

SELECT SUBSTRING ([Email],
CHARINDEX( '@', [Email] ) + 1, LEN([Email])) AS [Domain],
COUNT(*) AS [Total Number of Domain]
FROM [email_demo]
WHERE LEN([Email]) > 1
GROUP BY SUBSTRING ([Email], CHARINDEX( '@', [Email] ) + 1,
LEN([Email]));

PRODUCCIÓN :

Dominio Número total de dominio
abc.com 4
gfg.com 5
gfg.org 2
mno.com 2
xyz.com 4

Publicación traducida automáticamente

Artículo escrito por khushboogoyal499 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *