logo

SQL Server, JA CITĀ

IF priekšraksts ir daļa no vadības plūsmas funkcijas SQL Server. Parasti tas ir lēmumu pieņemšanas paziņojums dažādās programmēšanas valodās atgriež vērtību, pamatojoties uz dotajiem nosacījumiem . Šis paziņojums izpilda IF blokā ierakstīto kodu, kad dotais nosacījums tiek novērtēts uz patiesu un, kad nosacījums novērtē nepatiesu, tad tiks izpildīts ELSE priekšraksts.

IF paziņojums

Tālāk ir norādīta sintakse, kas ilustrē šī priekšraksta izmantošanu SQL Server:

 IF boolean_expression BEGIN { statement_block } END 

Iepriekš minētajā sintaksē paziņojuma_bloks iekš SĀKT... BEIGAS bloks tiek izpildīts, kad Būla_izteiksme ir apmierināts ar stāvokli. Pretējā gadījumā šis bloks tiek izlaists un programmas vadīkla tiek pārvietota uz priekšrakstu pēc BEIGAS atslēgvārds. Mums jāzina, ka, ja izteiksmē ir a ATLASĪT paziņojums, mums tas ir jādara ievietojiet tos iekavās .

Piemērs

Apskatīsim piemēru, lai saprastu IF paziņojumu bez ELSE bloka. Tālāk esošajā piemērā tiks parādīts rezultāts, kad nosacījums būs izpildīts. Pretējā gadījumā programmas vadīkla tika pārvietota uz priekšrakstu pēc END atslēgvārda, ja tāds ir.

 DECLARE @Marks INT = 65 ; IF @marks >= 45 BEGIN PRINT 'Congratulations! You pass the Examination'; END 

Izpildot paziņojumu, tiks iegūta šāda izvade:

SQL Server, JA CITĀ

Tagad mēs to parādīsim zemāk students' tabula ar šādiem datiem:

SQL Server, JA CITĀ

Tālāk ir sniegts vēl viens piemērs, kas parāda kopējās atzīmes no izvēlētā studenta no ' students' tabulu paraugu datu bāzē un pēc tam izdrukā a ziņa ja tas ir lielāks par 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 

Mēs saņemsim šādu izvadi:

SQL Server, JA CITĀ

Ja mēs vēlamies redzēt iepriekš minēto izvades ziņojumu, mums vajadzētu noklikšķināt uz Ziņojumi cilne:

SQL Server, JA CITĀ

IF-ELSE paziņojums

Reālajā situācijā mums ir jāveic kāda darbība ikreiz, kad nosacījums IF priekšrakstā ir TRUE vai FALSE. Šajā gadījumā ir noderīgs paziņojums IF…ELSE. Šis paziņojums izpilda ELSE priekšraksta bloku, ja nosacījums klauzulā IF tiek novērtēts kā FALSE.

Tālāk ir norādīta sintakse, kas ilustrē IF ELSE priekšraksta izmantošanu 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 

Piemērs

Apskatīsim piemēru, lai saprastu IF paziņojumu ar ELSE bloku. Tālāk esošajā piemērā tiks parādīts ziņojums ' Apsveicam! Jūs nokārtojat eksāmenu Kad ir izpildīts IF nosacījums. Pretējā gadījumā parādīt ' Jūs esat neveiksmīgs! Veiksmi nākamreiz '.

 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>