Foros del Web » Programando para Internet » PHP »

reconocer direcciones de email en SQL

Estas en el tema de reconocer direcciones de email en SQL en el foro de PHP en Foros del Web. Hola a todos/as, Les cuento que tengo una tabla con un campo que puede contener uno o varios mails en sus registros y sin ningun ...
  #1 (permalink)  
Antiguo 02/04/2016, 05:24
 
Fecha de Ingreso: febrero-2008
Ubicación: Bahia Blanca
Mensajes: 173
Antigüedad: 16 años, 2 meses
Puntos: 7
reconocer direcciones de email en SQL

Hola a todos/as,

Les cuento que tengo una tabla con un campo que puede contener uno o varios mails en sus registros y sin ningun formato de separación específico (ni comas ni espacios) es todo desordenado. Y mi intención es que cuando me encuentre con un campo con varios mails, obtener solo uno de ellos (al azar) para extraerlo.

Hasta ahora la unica lógica que encontré para resolverlo es hacer un select para obtener todos los registros que sean menores o iguales a 25 caracteres (e ir probando otros tamaños). Entonces "aproximadamente" me devolverá los registros que contienen solo un mail, por la lógica del tamaño e ignoraría los registros que contienen varias direcciones.


Utilizo:
Código PHP:
WHERE CHARACTER_LENGTH(mails)<= 25 
Mi duda es si existe alguna forma mas ortodoxa de hacerlo, o alguna sentencia SQL que sirva para reconocer direcciónes de e-mail y separarlas para contarlas, para evitar tener que descartar registros que no sirven.

Alguna idea?

Gracias.
  #2 (permalink)  
Antiguo 02/04/2016, 14:40
 
Fecha de Ingreso: mayo-2013
Mensajes: 169
Antigüedad: 10 años, 10 meses
Puntos: 25
Respuesta: reconocer direcciones de email en SQL

A ver si entiendo, los emails estaran separados de alguna forma.

Tal vez algunas veces por comas, otras por espacios, a lo mejor por otra cosa etc...

En cualquier caso, vas a tener que hacer uso de Expresiones Regulares,
nunca las he tenido que tocar en Mysql
pero te paso documentación:
http://dev.mysql.com/doc/refman/5.7/en/regexp.html
  #3 (permalink)  
Antiguo 02/04/2016, 16:03
 
Fecha de Ingreso: febrero-2008
Ubicación: Bahia Blanca
Mensajes: 173
Antigüedad: 16 años, 2 meses
Puntos: 7
Respuesta: reconocer direcciones de email en SQL

Gracias por responder.

Es correcto, entendiste bien.

También creo que va por ese lado, al principio usé expresiones regulares para detectar direcciones de mails, pero al haber varios en mails en un mismo campo, me descartaba esos registros como la solución actual.

Necesitaría detectarlas, contarlas y por ultimo seleccionar solo una de las direcciónes. Y sin valerme de PHP , solo utilizando consultas SQL.




Cita:
Iniciado por Amiancht Ver Mensaje
A ver si entiendo, los emails estaran separados de alguna forma.

Tal vez algunas veces por comas, otras por espacios, a lo mejor por otra cosa etc...

En cualquier caso, vas a tener que hacer uso de Expresiones Regulares,
nunca las he tenido que tocar en Mysql
pero te paso documentación:
http://dev.mysql.com/doc/refman/5.7/en/regexp.html

Etiquetas: mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:37.