SQL: cuando se trata de NO ENTRAR Y NO IGUAL A, ¿cuál es más eficiente y por qué?
Digamos que tengo un conjunto de artículos:
Objeto 1Item2Item3Ítem 4Item5Una consulta se puede construir de dos maneras. En primer lugar:
SELECT *
FROM TABLE
WHERE ITEM NOT IN ('item1', 'item2', 'item3', 'item4','item5')
O bien, se puede escribir como:
SELECT *
FROM TABLE
WHERE ITEM != 'item1'
AND ITEM != 'item2'
AND ITEM != 'item3'
AND ITEM != 'item4'
AND ITEM != 'item5'
¿Cuál es más eficiente y por qué?¿En qué momento uno se vuelve más eficiente que el otro? En otras palabras, ¿y si hubiera 500 artículos?Mi pregunta está específicamente relacionada con PostgreSQL.