Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] Consulta Mysql en la que filtre por dos campos de un mismo registro que coincida

Estas en el tema de Consulta Mysql en la que filtre por dos campos de un mismo registro que coincida en el foro de Bases de Datos General en Foros del Web. Hola amigos, necesito hacer una consulta de dos columnas de una unica tabla, para que muestre todo menos los dos parámetros que le paso que ...
  #1 (permalink)  
Antiguo 20/04/2017, 10:43
 
Fecha de Ingreso: julio-2012
Mensajes: 81
Antigüedad: 11 años, 8 meses
Puntos: 3
Consulta Mysql en la que filtre por dos campos de un mismo registro que coincida

Hola amigos, necesito hacer una consulta de dos columnas de una unica tabla, para que muestre todo menos los dos parámetros que le paso que coincidan en un mismo registro.

quiero que me muestre todos los campos menos el que coincida con "[email protected]" y "dominioA.com", pero es muy importante que esta condición este en un mismo registro.

Mi base de datos es la siguiente:
1 - [email protected] - dominioA.com
2 - [email protected] - dominioB.com
3 - [email protected] - dominioA.com
4 - [email protected] - dominioA.com
5 - [email protected] - dominioB.com

y como resultado tiene que mostrar:
2 - [email protected] - dominioB.com
3 - [email protected] - dominioA.com
4 - [email protected] - dominioA.com
5 - [email protected] - dominioB.com

he probado a usar un NOT LIKE pero no funciona:
Código:
SELECT * FROM miTabla WHERE emails NOT LIKE '[email protected]' AND dominio NOT LIKE 'dominioA.com'
ya que como resultado me devuelve lo siguiente:
5 - [email protected] - dominioB.com

Gracias por vuestras futuras respuestas y un saludo.
  #2 (permalink)  
Antiguo 20/04/2017, 11:03
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta Mysql en la que filtre por dos campos de un mismo registro que co

Podria ser algo como esto:

Código MySQL:
Ver original
  1. select * from tabla where email + '|' + dominio <> '[email protected]' + '|' + 'dominioA.com'

En este caso el not like no funciona porque le dices los registros que sean diferentes de
'[email protected]' y diferentes de 'dominioA.com', lo cual solo cumple el registro que te esta regresando
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 20/04/2017, 12:20
 
Fecha de Ingreso: julio-2012
Mensajes: 81
Antigüedad: 11 años, 8 meses
Puntos: 3
Respuesta: Consulta Mysql en la que filtre por dos campos de un mismo registro que co

Gracias por responder, pero no me funciono. Alguna otra idea?
  #4 (permalink)  
Antiguo 20/04/2017, 12:26
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta Mysql en la que filtre por dos campos de un mismo registro que co

como no funciono? estas usando mysql? como quedo el query?

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. id INT,
  4. email nvarchar(30),
  5. dominio Nvarchar(300)
  6. )
  7.  
  8. INSERT INTO #temp VALUES (1,'[email protected]','dominioA.com')
  9. INSERT INTO #temp VALUES (2,'[email protected]','dominioB.com')
  10. INSERT INTO #temp VALUES (3,'[email protected]','dominioA.com')
  11. INSERT INTO #temp VALUES (4,'[email protected]','dominioA.com')
  12. INSERT INTO #temp VALUES (5,'[email protected]','dominioB.com')
  13.  
  14.  
  15. SELECT * FROM #temp WHERE email + '|' + dominio <> '[email protected]' + '|' + 'dominioA.com'

Resultado:

id email dominio
2 [email protected] dominioB.com
3 [email protected] dominioA.com
4 [email protected] dominioA.com
5 [email protected] dominioB.com


Si es mysql revisa como se concatenan los valores
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Última edición por Libras; 20/04/2017 a las 12:34
  #5 (permalink)  
Antiguo 20/04/2017, 12:47
 
Fecha de Ingreso: julio-2012
Mensajes: 81
Antigüedad: 11 años, 8 meses
Puntos: 3
Respuesta: Consulta Mysql en la que filtre por dos campos de un mismo registro que co

No me di cuenta de que eso era SQL Server.

Y ahora si que funciono. Mil gracias!!!!

Dejo a continuación el codigo en MySql:
Código MySQL:
Ver original
  1. select * from miTabla where concat(email,dominio) <> concat('[email protected]','dominioA.com')


Un saludo y otra vez Mil Gracias!!!

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 23:39.