问题
if((isnull(@value,''))='')
I want to know whether the above piece of code works in checking if the variable is null or empty.
回答1:
Yes, that code does exactly that.
You can also use:
if (@value is null or @value = '')
Edit:
With the added information that @value
is an int
value, you need instead:
if (@value is null)
An int
value can never contain the value ''
.
回答2:
Use This way is Better
if LEN(ISNULL(@Value,''))=0
This check the field is empty
or NULL
回答3:
Yes, you could also use COALESCE(@value,'')=''
which is based on the ANSI SQL standard:
SELECT CASE WHEN COALESCE(@value,'')=''
THEN 'Yes, it is null or empty' ELSE 'No, not null or empty'
END AS IsNullOrEmpty
DEMO
回答4:
Yes, it works. Check the below example. Assuming @value is not 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
Result :
IS_EMPTY
--------
empty
empty
123
回答5:
Try this:
ISNULL(IIF (ColunmValue!='',ColunmValue, 'no units exists') , 'no units exists') AS 'ColunmValueName'
回答6:
You can try
<column_name> is null
in the where
clause.
回答7:
You can try this.....
DECLARE @value Varchar(100)=NULL
IF(@value = '' OR @value IS NULL)
BEGIN
select 1
END
ELSE
BEGIN
select 0
END
来源:https://stackoverflow.com/questions/16080139/null-or-empty-check-for-a-string-variable