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

Consulta usando like y not like

Estas en el tema de Consulta usando like y not like en el foro de Mysql en Foros del Web. Buenas, tengo que hacer una consulta un poco complicada para mi, a ver si me pueden ayudar. Esto es lo que necesito: buscar en tablaX ...
  #1 (permalink)  
Antiguo 26/01/2016, 11:21
 
Fecha de Ingreso: febrero-2008
Ubicación: Euskal Herria
Mensajes: 130
Antigüedad: 16 años, 2 meses
Puntos: 1
Consulta usando like y not like

Buenas, tengo que hacer una consulta un poco complicada para mi, a ver si me pueden ayudar.


Esto es lo que necesito:
buscar en tablaX que en campo1 tenga palabra1 o palabar2 o palabra3 y campo2 sea xxx pero que en campo1 no tenga palabra4 o palabra5 o palabra6.

Gracias,
  #2 (permalink)  
Antiguo 26/01/2016, 11:37
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Respuesta: Consulta usando like y not like

Utilizando IN y luego un AND.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 26/01/2016, 12:00
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 12 años, 10 meses
Puntos: 15
Respuesta: Consulta usando like y not like

Código SQL:
Ver original
  1. SELECT * FROM TABLA WHERE (campo1 LIKE 'palabra1' OR campo1 LIKE 'palabar2' OR campo1 LIKE 'palabra3') AND (campo2 = 'xxx' AND (campo1 LIKE 'palabra4' OR campo1 LIKE 'palabra5' OR campo1 LIKE 'palabra6'))
  #4 (permalink)  
Antiguo 26/01/2016, 14:06
 
Fecha de Ingreso: febrero-2008
Ubicación: Euskal Herria
Mensajes: 130
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Consulta usando like y not like

Cita:
Iniciado por BrujoNic Ver Mensaje
Utilizando IN y luego un AND.
Te agredecería si me pudieras poner un ejemplo.

gracias,
  #5 (permalink)  
Antiguo 26/01/2016, 14:36
 
Fecha de Ingreso: febrero-2008
Ubicación: Euskal Herria
Mensajes: 130
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Consulta usando like y not like

Cita:
Iniciado por ZedGe1505 Ver Mensaje
Código SQL:
Ver original
  1. SELECT * FROM TABLA WHERE (campo1 LIKE 'palabra1' OR campo1 LIKE 'palabar2' OR campo1 LIKE 'palabra3') AND (campo2 = 'xxx' AND (campo1 LIKE 'palabra4' OR campo1 LIKE 'palabra5' OR campo1 LIKE 'palabra6'))
Gracias por la respuesta pero en tu ejemplo me devoleveria si tiene palabra4 o palabra5 o palabra6 en campo1 verdad? y lo que quiero es que en campo1 no tenga palabra4 o palabra5 o palabra6.

Os pongo un ejemplo de lo que quiero. Tengo esta tabla:
ref | type | value
-------------------
1 | 12 | "sar do"
1 | 14 | "bilo"
2 | 12 | "sar ete"
2 | 14 | "zar"
3 | 12 | "la de"
3 | 14 | "bai"

Entonces lo que quiero es que me devuelva los "ref" que tengan (en type=12 contenga "sar" o "de") y que (en type=14 no tenga "bilo"). Entonces me tendria que devolver el ref 2 y el ref 3.
  #6 (permalink)  
Antiguo 26/01/2016, 14:43
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Respuesta: Consulta usando like y not like

Código:
SELECT * FROM TABLAx
WHERE campo1 IN ('palabra1', 'palabra2', 'palabra3') AND campo2 = 'xxx';
No es necesario evaluar nuevamente nuevamente campo1 a que omita algo porque ya está evaluando lo que necesita de ese campo.

Por lo menos así lo veo yo, pero viendo lo que necesitas, creo que buscaría EXACTEMENTE el IN y no te serviría.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL

Etiquetas: campo, tabla, usando
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 16:01.