sql >> Base de Datos >  >> RDS >> Mysql

Comparación de rendimiento entre sql SELECT NULL y SELECT 1

Ambos realizan lo mismo, porque la cláusula SELECT en EXISTS nunca se evalúa. Puedes probar usando:

... EXISTS(SELECT 1/0 FROM TABLE) 

Eso debería desencadenar un error de división por cero, pero no lo hará.

Personalmente, prefiero usar NULL porque es obvio que no se hace referencia a nada en la tabla, por lo que es más visible para los demás. Seleccionar un valor, como el INT número 1 en el segundo ejemplo, puede dar lugar a suposiciones sobre lo que sucede si no está familiarizado con la cláusula EXISTS.