Die IF-Anweisung ist Teil der Kontrollflussfunktion in SQL Server. Normalerweise handelt es sich dabei um eine Entscheidungserklärung in verschiedenen Programmiersprachen gibt einen Wert zurück, der auf den angegebenen Bedingungen basiert . Diese Anweisung führt den im IF-Block geschriebenen Code aus, wenn die gegebene Bedingung als wahr ausgewertet wird, und wenn die Bedingung als falsch ausgewertet wird, wird die ELSE-Anweisung ausgeführt.
Die IF-Anweisung
Die folgende Syntax veranschaulicht die Verwendung dieser Anweisung in SQL Server:
IF boolean_expression BEGIN { statement_block } END
In der obigen Syntax ist die Anweisungsblock im ANFANG...ENDE Block wird ausgeführt, wenn der Boolescher Ausdruck ist mit dem Zustand zufrieden. Andernfalls wird dieser Block übersprungen und die Programmsteuerung auf die Anweisung nach dem verschoben ENDE Stichwort. Wir sollten wissen, dass, wenn der Ausdruck a enthält WÄHLEN Aussage, wir müssen Setzen Sie sie in Klammern .
Beispiel
Sehen wir uns das Beispiel an, um die IF-Anweisung ohne ELSE-Block zu verstehen. Im folgenden Beispiel wird das Ergebnis angezeigt, wenn die Bedingung erfüllt ist. Andernfalls wird die Programmsteuerung zu der Anweisung nach dem Schlüsselwort END (falls vorhanden) verschoben.
Java-Datentypen
DECLARE @Marks INT = 65 ; IF @marks >= 45 BEGIN PRINT 'Congratulations! You pass the Examination'; END
Das Ausführen der Anweisung führt zu der folgenden Ausgabe:
Jetzt werden wir es unten demonstrieren. Student' Tabelle mit den folgenden Daten:
Das Folgende ist ein weiteres Beispiel, das Folgendes erhält Gesamtnoten eines ausgewählten Studenten aus der ' Student' Tabelle in der Beispieldatenbank und druckt dann eine Nachricht wenn ja größer als 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
Wir erhalten die folgende Ausgabe:
Wenn wir die obige Ausgabemeldung sehen möchten, sollten wir auf klicken Mitteilungen Tab:
Die IF-ELSE-Anweisung
Im realen Szenario müssen wir immer dann eine Aktion ausführen, wenn die Bedingung in der IF-Anweisung TRUE oder FALSE ist. In diesem Fall ist die IF…ELSE-Anweisung nützlich. Diese Anweisung führt den ELSE-Anweisungsblock aus, wenn die Bedingung in der IF-Klausel als FALSE ausgewertet wird.
Java-Kern Java
Im Folgenden finden Sie die Syntax, die die Verwendung der IF ELSE-Anweisung in SQL Server veranschaulicht :
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
Beispiel
Sehen wir uns das Beispiel an, um die IF-Anweisung mit dem ELSE-Block zu verstehen. Im folgenden Beispiel wird die Meldung angezeigt: Glückwunsch! Sie bestehen die Prüfung ' wenn die IF-Bedingung erfüllt ist. Andernfalls wird angezeigt: Du bist gescheitert! Viel Glück beim nächsten Mal '.
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>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 ' <strong>Student'</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 >= 550 BEGIN SELECT id, name, gender, age, total_marks FROM Student WHERE total_marks >= 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 >= 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 >= 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…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'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>550>45>