2012-01-12 11 views
10

Im usando IN para seleccionar cosas ...de MySQL en la declaración

WHERE categories IN ("red", "blue", "green") 

Esto selecciona cualquier elemento de categorías de color rojo, azul o verde, mi pregunta es, ¿hay una manera de seleccionar un elemento que tiene que ser en las tres categorías?

+3

Es categorías una columna en una tabla? ¿Cómo se representarían múltiples categorías en él si es así? –

+1

@DavidM Sí, me di cuenta de eso también al escribir una respuesta. Si se trata de una sola columna (como el asker sugerido con la consulta parcial), ¿cómo podría pertenecer a múltiples categorías? – Crontab

+0

@Crontab Especialmente con la columna 'WHERE IN()'. –

Respuesta

20
SELECT Item 
    FROM YourTable 
    WHERE categories IN ('red', 'blue', 'green') 
    GROUP BY Item 
    HAVING COUNT(DISTINCT categories) = 3 
+0

¿cómo se agrega el límite? este es definitivamente incorrecto SELECCIONAR * DE Clientes DONDE City IN ('Berlin', 'México D.F.') LÍMITE 5, 5; –

+0

@MarlonBuendia Por favor, comience una nueva pregunta para algo como esto. –

+0

creo que estoy enfermo solo edito mi pregunta actual –

0
SELECT Item 
    FROM YourTable 
    WHERE categories ALL ('red', 'blue', 'green') 
Cuestiones relacionadas