elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  consulta mysql
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: consulta mysql  (Leído 5,193 veces)
OssoH


Desconectado Desconectado

Mensajes: 911


Ver Perfil
consulta mysql
« en: 23 Junio 2021, 17:50 pm »

Os muestro por ejemplo los datos de un producto concreto :
SELECT * FROM ps_product_tag_special ts WHERE id_product=200000102

me devuelve :
id_product   id_tag_special
200000102   1
200000102   8
200000102   14
200000102   15

Quiero por ejemplo una SQL (MYSQL) que me devuelva los id_product  que tengan en su id_tag_special tanto el 8 como el 15.

Lo he intentado con la query :
SELECT DISTINCT(ts.id_product)
FROM ps_product_tag_special ts
WHERE ts.id_tag_special IN (8,15)

pero no me sirve porque me devuelve los id_product que tengan 8 o 15. 
Yo quiero la operación sea un AND y no un OR.

¿alguna sugerencia? Gracias



En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: consulta mysql
« Respuesta #1 en: 23 Junio 2021, 18:36 pm »

Citar
Quiero por ejemplo una SQL (MYSQL) que me devuelva los id_product  que tengan en su id_tag_special tanto el 8 como el 15.

Citar
pero no me sirve porque me devuelve los id_product que tengan 8 o 15.

Pero no es eso lo que buscabas?, creo que no entendí bien, necesitas obtener todos los id_product que tengan 8 o 15 y justamente eso es lo que te muestra de resultado la base de datos.

Citar
Yo quiero la operación sea un AND y no un OR.

En ves de:

Código:
WHERE ts.id_tag_special IN (8,15)

Debería ser:

Código:
WHERE ts.id_tag_special = 8 AND ts.id_tag_special =15


En línea

OssoH


Desconectado Desconectado

Mensajes: 911


Ver Perfil
Re: consulta mysql
« Respuesta #2 en: 23 Junio 2021, 18:41 pm »

Quiero obtener los id_product que tengan 8 y 15

Si utilizo la función IN de mysql no me sirve porque es como si hiciera un OR y no busco eso.
En línea

OssoH


Desconectado Desconectado

Mensajes: 911


Ver Perfil
Re: consulta mysql
« Respuesta #3 en: 23 Junio 2021, 18:52 pm »

Creo que ya lo he solucionado. Voy a comprobarlo bien

Código:
SELECT id_product, id_tag_special
FROM ps_product_tag_special
WHERE id_tag_special IN (8,15)
GROUP BY id_product
HAVING COUNT(DISTINCT id_tag_special) = 2
En línea

Carloswaldo
Traductor
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.762


Nos reservamos el derecho de ban.


Ver Perfil WWW
Re: consulta mysql
« Respuesta #4 en: 24 Junio 2021, 06:50 am »

Yo creo que eso último que hiciste debería funcionar, siempre que la combinación id_product id_tag_special sea única.
En línea





Dominio en venta: https://forojapones.com/
OssoH


Desconectado Desconectado

Mensajes: 911


Ver Perfil
Re: consulta mysql
« Respuesta #5 en: 24 Junio 2021, 08:53 am »

Funciona!! ya lo tengo arreglado.
Gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Consulta en mysql
Bases de Datos
octavioxd 3 4,844 Último mensaje 9 Enero 2010, 04:27 am
por octavioxd
consulta mysql
Bases de Datos
kakashi20 2 2,594 Último mensaje 25 Noviembre 2013, 19:14 pm
por Shell Root
¿Consulta sobre C + MySQL, traspaso del resultado de una consulta MySQL a C?
Programación C/C++
GisiNA 2 3,667 Último mensaje 8 Abril 2014, 16:00 pm
por GisiNA
Consulta Mysql
Bases de Datos
yoelrodguez 6 3,489 Último mensaje 12 Noviembre 2014, 22:19 pm
por Graphixx
Consulta MySQL
Windows
Juliov88 0 1,822 Último mensaje 23 Junio 2019, 07:09 am
por Juliov88
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines