if((isnull(@value,''))='')
Je veux savoir si le code ci-dessus fonctionne pour vérifier si la variable est nulle ou vide.
Oui, ce code fait exactement cela.
Vous pouvez aussi utiliser:
if (@value is null or @value = '')
Avec l'information ajoutée que @value
est une valeur int
, vous devez plutôt:
if (@value is null)
Une valeur int
ne peut jamais contenir la valeur ''
.
Utiliser de cette façon est mieux
if LEN(ISNULL(@Value,''))=0
Cette vérification du champ est empty
ou NULL
Oui, vous pouvez également utiliser COALESCE(@value,'')=''
qui est basé sur le standard ANSI SQL:
SELECT CASE WHEN COALESCE(@value,'')=''
THEN 'Yes, it is null or empty' ELSE 'No, not null or empty'
END AS IsNullOrEmpty
Essaye ça:
ISNULL(IIF (ColunmValue!='',ColunmValue, 'no units exists') , 'no units exists') AS 'ColunmValueName'
Oui cela fonctionne. Vérifiez l'exemple ci-dessous. En supposant que @value n'est pas int
WITH CTE
AS
(
SELECT NULL AS test
UNION
SELECT '' AS test
UNION
SELECT '123' AS test
)
SELECT
CASE WHEN isnull(test,'')='' THEN 'empty' ELSE test END AS IS_EMPTY
FROM CTE
Résultat :
IS_EMPTY
--------
empty
empty
123
Vous pouvez essayer ceci .....
DECLARE @value Varchar(100)=NULL
IF(@value = '' OR @value IS NULL)
BEGIN
select 1
END
ELSE
BEGIN
select 0
END
Tu peux essayer
<column_name> is null
dans la clause where
.