Empty statement in T-SQL

I also believe there are sometimes legitimate uses for a nothing script (automatically generated scripts for example).

Although it's an old thread, I'll put in my two cents. I think declaring a variable is one of the most benign statements you can use. The statement doesn't even show up in execution plans:

IF (@variable = 0)
BEGIN
    DECLARE @placeHolder BIT;
END

ugly happens sometimes. I believe their is a valid use. In a lengthy/complicated decision branching structure with several if else statements, some of those statements may contain conditions in which you specifically desire no action. You also don't want those condition falling thru do the default else, where certain work is done. In that case, it's a valid use.

Here are two ways to do this - see B and C

Declare @status as char(1) 
set @status = 'D'

If (@status = 'A')
    select 'Great!'

Else if (@status = 'B')
begin
    if null=null select null -- predicate never resolves true
end

Else if (@status = 'C')
    set @status = @status  -- set a variable to itself 

Else
    select 'Needs work!'

Note, this is an over-simplified example. It is best used for readability when conditions are complex.


You can declare a label to do nothing.

DECLARE @value INT

IF @value IS NULL
BEGIN
no_op1: 
END