logo

SQL Server IF ELSE

Příkaz IF je součástí funkce toku řízení na serveru SQL Server. Obvykle se jedná o rozhodovací prohlášení v různých programovacích jazycích, které vrátí hodnotu na základě daných podmínek . Tento příkaz provede kód zapsaný v bloku IF, když se daná podmínka vyhodnotí jako pravdivá a když se podmínka vyhodnotí jako nepravda, provede se příkaz ELSE.

Prohlášení IF

Níže jsou uvedeny syntaxe, které ilustrují použití tohoto příkazu v SQL Server:

 IF boolean_expression BEGIN { statement_block } END 

Ve výše uvedené syntaxi je výpis_bloku v ZAČÁTEK...KONEC blok se provede, když booleovský_výraz je s podmínkou spokojen. V opačném případě je tento blok přeskočen a ovládací prvek programu se přesune do příkazu za KONEC klíčové slovo. Měli bychom vědět, že pokud výraz obsahuje a VYBRAT prohlášení, musíme uzavřete je do závorek .

Příklad

Podívejme se na příklad, abychom pochopili příkaz IF bez bloku ELSE. Níže uvedený příklad zobrazí výsledek, když je podmínka splněna. Jinak se ovládací prvek programu přesunul na příkaz za klíčovým slovem END, pokud existuje.

pořadí náhodně v sql
 DECLARE @Marks INT = 65 ; IF @marks >= 45 BEGIN PRINT 'Congratulations! You pass the Examination'; END 

Provedení příkazu poskytne následující výstup:

SQL Server IF ELSE

Nyní si to ukážeme na níže uvedeném ' Student' tabulka s následujícími údaji:

konvence pojmenování Java
SQL Server IF ELSE

Níže je další příklad, který dostane celkové známky vybraného studenta z ' Student' tabulku ve vzorové databázi a poté vytiskne a zpráva Pokud to je větší než 400 .

 BEGIN DECLARE @Total_Marks INT; SELECT @Total_Marks = total_marks FROM Student WHERE age>25; SELECT @Total_Marks; IF @Total_Marks > 400 BEGIN PRINT 'Congratulations! You pass the Examination'; END END 

Získáme následující výstup:

SQL Server IF ELSE

Pokud chceme vidět výše uvedenou výstupní zprávu, měli bychom kliknout na Zprávy karta:

SQL Server IF ELSE

Prohlášení IF-ELSE

Ve scénáři reálného světa musíme provést nějakou akci, kdykoli je podmínka v příkazu IF TRUE nebo FALSE. V tomto případě je užitečný příkaz IF…ELSE. Tento příkaz provede blok příkazu ELSE, když je podmínka v klauzuli IF vyhodnocena jako NEPRAVDA.

Následuje syntaxe, která ilustruje použití příkazu IF ELSE na serveru SQL Server :

 IF expression BEGIN Statement block -- It executes when the IF clause expression is TRUE. END ELSE BEGIN Statement block -- It executes when the IF clause expression is FALSE. END 

Příklad

Podívejme se na příklad, abychom pochopili příkaz IF s blokem ELSE. Níže uvedený příklad zobrazí zprávu „ Gratulujeme! Složíte Zkoušku ' když je splněna podmínka IF. V opačném případě zobrazte „ Jste neúspěšní! Příště víc štěstí '.

zip v linuxu
 DECLARE @Marks INT; SET @Marks = 65; IF @marks <45 begin print 'congratulations! you pass the examination'; end else 'you are failed! better luck next time'; < pre> <p>Executing the statement will give the below output. Here, the <strong>marks</strong> variable is <strong>65</strong> , and the <strong>condition (65<45)< strong> is not satisfied. Therefore, the message inside the ELSE block is displayed:</45)<></strong></p> <img src="//techcodeview.com/img/sql-server-tutorials/49/sql-server-if-else-5.webp" alt="SQL Server IF ELSE"> <p>We will get this output because the condition <strong>(65&gt;45)</strong> is satisfied. Therefore, the message inside the IF block is displayed:</p> <img src="//techcodeview.com/img/sql-server-tutorials/49/sql-server-if-else-6.webp" alt="SQL Server IF ELSE"> <p>Now, we will demonstrate the IF ELSE statement on the above &apos; <strong>Student&apos;</strong> table. In this example, we are going to check whether the student <strong>total marks</strong> is <strong>greater than or equal to 400</strong> or not as follows:</p> <ul> <li>When the IF condition is TRUE, we will get the student records whose total marks are greater than or equal to 550.</li> <li>If the condition is FALSE, we will get the student records whose total marks are less than 550.</li> </ul> <p>Here is the program:</p> <pre> DECLARE @Marks INT; SET @Marks = 600 ; IF @Marks &gt;= 550 BEGIN SELECT id, name, gender, age, total_marks FROM Student WHERE total_marks &gt;= 550 ORDER BY age ASC END ELSE BEGIN SELECT id, name, gender, age, total_marks FROM Student WHERE total_marks <550 order by age asc end < pre> <p>In this code, we have specified the <strong>@Marks</strong> variable to <strong>600</strong> , and the condition (600 &gt;= 550) is satisfied. Therefore, we will get the output where student records whose total marks are greater than or equal to 550 are displayed.</p> <img src="//techcodeview.com/img/sql-server-tutorials/49/sql-server-if-else-7.webp" alt="SQL Server IF ELSE"> <p>If we changed the <strong>@Marks</strong> variable to <strong>500</strong> and the condition (500 &gt;= 550) becomes false. Therefore, we will get the output where student records whose total marks are less than 550 are displayed.</p> <img src="//techcodeview.com/img/sql-server-tutorials/49/sql-server-if-else-8.webp" alt="SQL Server IF ELSE"> <h2>Nested IF ELSE Statement</h2> <p>Unlike other programming languages, we can nest an IF...ELSE statement inside another IF...ELSE statement in SQL Server. Let us demonstrate it with the following example:</p> <pre> DECLARE @age INT; SET @age = 6; IF @age <18 50 print 'you are underage'; else begin if @age < below 50'; senior cetizen'; end; pre> <p>In this example, we are going to check whether the <strong>age is underage, below 50, or senior citizen</strong> as follows:</p> <ul> <li>If the value of the <strong>@age</strong> variable is below <strong>18</strong> , it will print the person is <strong>underage</strong> .</li> <li>If the condition is FALSE, the ELSE part will be executed that has a nested IF&#x2026;ELSE.</li> <li>If the value of the <strong>@age</strong> variable is under <strong>50</strong> , it will print <strong>below 50</strong> . Finally, if no condition is satisfied, it will print <strong>senior citizens</strong> .</li> </ul> <p>Here is the result:</p> <img src="//techcodeview.com/img/sql-server-tutorials/49/sql-server-if-else-9.webp" alt="SQL Server IF ELSE"> <p>This article gives a complete overview of how to use the SQL Server IF ELSE statement. Here we have learned:</p> <ul> <li>Variables are objects that serve as placeholders.</li> <li>The keyword BEGIN will be used to start a statement block, and the END keyword must be used to close it.</li> <li>The use of ELSE in an IF... ELSE statement is optional.</li> <li>It&apos;s also possible to nest an IF...ELSE statement inside another IF...ELSE statement. However, nesting an IF statement within another statement is bad practice because it makes the code difficult to read and maintain.</li> </ul> <hr></18></pre></550></pre></45>