Técnicamente, la consulta tal y como la planteas debería funcionar (NOT invierte el resultado de una operación lógica, y forma parte del estándar de ANSI SQL), pero como te respondió huesos52, hay otras formas. esa es una.
También puedes probar:
Código sql:
Ver originalSELECT *
FROM panaderos
WHERE nombre != 'pepe';
Código sql:
Ver originalSELECT *
FROM panaderos
WHERE nombre NOT IN ( 'pepe');
Esta segunda forma la puedes usar también para comparar un campo con una lista de valores, encerrados en el paréntesis u obtenidos de una subconsulta:
Código sql:
Ver originalSELECT *
FROM panaderos
WHERE nombre NOT IN
(SELECT nombre FROM listapanaderos;);
En el último caso, debes recordar que la subconsulta debe devolver un sólo campo y no una lista de campos.