2012-08-24 6 views
13

Estoy tratando de obtener la sintaxis correcta para el siguiente caso?sintaxis mysql en valores no iguales

SELECT * FROM wp_posts AS p WHERE post_type = 'post' AND post_status = 'publish' AND ID <> 5616,1095,1357,271,2784,902 ORDER BY post_title DESC 

Respuesta

40

En lugar de <>, puede utilizar NOT IN (5616,1095...)

SELECT * 
FROM wp_posts AS p 
WHERE post_type = 'post' 
AND post_status = 'publish' 
AND ID NOT IN (5616,1095,1357,271,2784,902) 
ORDER BY post_title DESC 
+0

muchas gracias por su respuesta – lgt

+0

Batirme por 22 segundos. :-) +1 y borrando mi respuesta. –

2
SELECT * FROM wp_posts AS p WHERE post_type = 'post' 
AND post_status = 'publish' AND 
ID NOT IN (5616,1095,1357,271,2784,902) ORDER BY post_title DESC 
2

El operador <> compara un solo argumento izquierda y derecha para ver si no son iguales. En su caso, tiene un argumento de la mano izquierda que debe verificarse (supongo) para ver si el ID no tiene ninguno de los valores de la derecha. Por lo tanto, debe utilizar ID NOT IN (5616,1095,1357,271,2784,902)

Cuestiones relacionadas