MySQL MariaDB

Изявления на MySQL If-then

Изявления на MySQL If-then
Декларацията „IF“ често се използва в запазени програми в MySQL, които налагат простата условна конструкция. Операторът IF-THEN позволява изпълнение на поредица от SQL изрази въз основа на посочено условие. Получава True, False или NULL като една от трите стойности. В това ръководство ще разберем как да обработим част от SQL команда по отношение на дадено условие, като използваме оператора MySQL IF-then.

Синтаксис:

>> IF условие THEN изявления END IF;

В следния синтаксис:

Нека започнем да разбираме If-then, като стартираме командната обвивка MySQL. Въвеждайки паролата, ние сме готови за работа.

Пример 01: MySQL IF () Функция:

За да придобием знания за оператора If, първо трябва да тестваме функцията IF (). В примера по-долу дефинирахме функцията IF () в заявката SELECT и му дадохме условие да провери дали 2 е по-голямо от 9 или не. Ако условието е валидно, то ще върне първата стойност след условието; в противен случай, второ. Тъй като нашето условие не е валидно, затова връща „false“.

Да приемем таблица „ред“, както е показано на приложеното изображение.

>> ИЗБЕРЕТЕ * ОТ данни.поръчка;

Нека да разгледаме функцията IF (), изпълнена на тази таблица. Избираме трите колони. Ако колоната „Състояние“ има стойността „Платено“, тогава методът IF () ще върне „Отличен“, в противен случай „Лош“. Върнатата стойност на функцията IF () ще бъде записана в новосъздадена по време на изпълнение колона „Забележки“. Сега можем да видим изхода, както е приложен по-долу.

Пример 02: Изявление MySQL IF-THEN

Опитахме функция IF () в командния ред на MySQL. Нека опитаме нов пример за израза IF-Then в графичен интерфейс на MySQL, докато използваме процедури. Отворете MySQL Workbench 8.0 и първо се свържете с базата данни.

Работихме върху базата данни „данни“; след това трябва да посочите командата 'use data', за да я използвате в Workbench. Натиснете иконата на светкавицата, за да я изпълните. Трябва да знаете, че инструкциите If-then работят с процедурите за съхранение, както е показано по-долу. Декларирахме разделител на ключови думи, за да стартираме процедурата за съхранение. Процедурата 'myResult' е взела два аргумента. След оператора BEGIN имаме оператор IF, който проверява състоянието. Ако условието удовлетворява, тогава ще бъде изпълнена командата 'THEN' и следващият й оператор. Ако условието стане невярно, тогава операторите след „END IF“ ще бъдат приложени.

Тъй като процедурата 'myResult' е взела два аргумента, трябва да предадем две стойности в нея.

След предаване на стойности на процедурата за съхранение, трябва да извикаме процедурата, за да видим резултатите от оператора If-then.

И резултатът е даден по-долу. Той е изчислил discount_rate чрез извлечението If-then.

Ако искате да използвате същата съхранена процедура отново, първо трябва да изпуснете тази процедура, като използвате командата DROP по-долу и след това да я изпълните отново.

Пример 03: Изявление MySQL IF-THEN-ELSE

Нека да преминем към някакво широко ниво. Този път ще разгледаме оператора IF-Then-Else, като използваме съхранената процедура в нашия пример. Погледнете таблицата по-долу „студент“ с някои полета в нея.

>> ИЗБЕРЕТЕ * ОТ данни.студент;

На първо място, трябва да използвате базата данни „данни“, за да използвате таблицата „ученик“ в нашата процедура за съхранение. За това въведете командата по-долу във вашия терминал за команден ред MySQL.

>> използвайте данни;

Сега декларирайте разделител и след това започнете да пишете процедурата за съхранение. Командата 'CREATE' ще се използва за деклариране или създаване на процедура както винаги. Процедурата „подробности“ взема два аргумента. След това процедурата за съхранение започва с ключовата дума „BEGIN“. Думата „DECLARE“ е използвана за дефиниране на променлива „Sub“ за субекти. Заявката „SELECT“ е използвана за избиране на стойностите на колона „Тема“ от таблицата „студент“ и запазването й в новодекларираната променлива „Sub“. Предоставената от потребителя стойност 'S_Subject' ще бъде сравнена със стойността на колоната 'Subject'. В израза „IF“, ако предоставената от потребителя стойност „S_Subject“ съвпада със стойността на колоната „Subject“, тогава относителният израз „THEN“ ще бъде изпълнен заедно със своите изявления в. Тази процедура ще бъде обработена от първия оператор „IF“ до втория, след това от третия израз „ELSEIF“. Ако последната част „ELSEIF“ не съвпада със стойността, предоставена от потребител, тогава контролът ще бъде даден на израза „END IF“.

Нека завършим разделителя с командата по-долу.

Трябва да извикаме процедурата за съхранение, като я изпълним с заявка 'CALL' и предоставим аргументи в скобите. Тъй като сме дали „математика“ като негова стойност, ще се генерира нова колона за извеждане на израза „THEN“ и „SET“.

Нека проверим новосъздадената колона 'S_Cource', като използваме командата по-долу. Можете да видите, че имаме подходящ резултат според курса „Математика“.

Извикайте процедурата отново чрез промяна при първия аргумент, т.е.д., предмет. Този път осигурихме темата „Компютър“.

Докато избирате стойността на колоната „S_Cource“, можете да видите, че имаме стойност, свързана с темата „Компютър“, която е „ИТ“.

Още веднъж извикахме процедурата, както е показано по-долу, чрез модификация при първия аргумент. Този път доставихме темата „История“.

Като извикате отново колоната „S_Cource“, можете да видите как имаме резултат „Магистър по история“ по отношение на наскоро предоставената тема, e.ж., История.

Заключение:

Направихме всички примери, необходими за изработване на изявления If-then, напр.ж., IF () функция, If-then прост оператор, If-then-else израз.

Полезни инструменти за геймърите на Linux
Ако искате да играете игри на Linux, има вероятност да сте използвали приложения и помощни програми като Wine, Lutris и OBS Studio, за да подобрите иг...
HD Remastered Games за Linux, които никога преди не са имали издание на Linux
Много разработчици и издатели на игри излизат с HD ремастер на стари игри, за да удължат живота на франчайза, моля феновете, които искат съвместимост ...
Как да използвам AutoKey за автоматизиране на Linux игри
AutoKey е програма за автоматизация на настолни компютри за Linux и X11, програмирана в Python 3, GTK и Qt. Използвайки неговата функционалност за скр...