Ley conmutativa del NOT en SQL Server
Nunca en la vida me lo había preguntado... pero al igual que la gran pregunta ¿ser o no ser?... a veces llegan personas con esas preguntas filosófico-algorítmica, que aunque uno al verlo sabe la respuesta, no pude soportar hacer la demostración y comprobarlo directamente.
La pregunta es muy sencilla. Es lo mismo "IF NOT @intValor IS NULL" que "IF @intValor IS NOT NULL"?
Vamos a la cuestión:
Definitivamente el resultado indica que en SQL Server el "NOT" cumple la propiedad conmutativa y sin importar donde esta el "NOT" (cumpliendo la sintaxis) el resultado es el mismo, pues ya sea con datos nulos o no nulos la respuesta siempre es la misma.
Sueter... que la cuestión era fácil de resolver y no toca acudir al método de la duda.
Por: Camilo Martinez [€quiman]
La pregunta es muy sencilla. Es lo mismo "IF NOT @intValor IS NULL" que "IF @intValor IS NOT NULL"?
Vamos a la cuestión:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DECLARE @intValor INT, @notIsNull INT, @isNotNull INT | |
SET @intValor = 1; | |
SET @notIsNull = 0; | |
SET @isNotNull = 0; | |
IF NOT @intValor IS NULL | |
BEGIN | |
SET @notIsNull = 1; | |
END | |
IF @intValor IS NOT NULL | |
BEGIN | |
SET @isNotNull = 1; | |
END | |
SELECT @intValor as Valor, @notIsNull as NotIsNull, @isNotNull as IsNotNull | |
-- DECLARE @intValor INT | |
SET @intValor = NULL; | |
SET @notIsNull = 0; | |
SET @isNotNull = 0; | |
IF NOT @intValor IS NULL | |
BEGIN | |
SET @notIsNull = 1; | |
END | |
IF @intValor IS NOT NULL | |
BEGIN | |
SET @isNotNull = 1; | |
END | |
SELECT @intValor as Valor, @notIsNull as NotIsNull, @isNotNull as IsNotNull |
Definitivamente el resultado indica que en SQL Server el "NOT" cumple la propiedad conmutativa y sin importar donde esta el "NOT" (cumpliendo la sintaxis) el resultado es el mismo, pues ya sea con datos nulos o no nulos la respuesta siempre es la misma.
Sueter... que la cuestión era fácil de resolver y no toca acudir al método de la duda.
Por: Camilo Martinez [€quiman]
Comentarios
Publicar un comentario