Шта је клаузула ВХЕРЕ у МиСКЛ-у?
Клаузула ВХЕРЕ у МиСКЛ је кључна реч која се користи за одређивање тачних критеријума података или редова на које ће наведени СКЛ израз утицати. Клаузула ВХЕРЕ може се користити са СКЛ изразима попут ИНСЕРТ, УПДАТЕ, СЕЛЕЦТ и ДЕЛЕТЕ за филтрирање записа и извршавање различитих операција на подацима.
Гледали смо како тражити податке из базе података помоћу наредбе СЕЛЕЦТ у претходном водичу. Израз СЕЛЕЦТ вратио је све резултате из упитане табеле базе података.
Постоје, међутим, тренутци када желимо да ограничимо резултате упита на одређено стање. Клаузула ВХЕРЕ у СКЛ-у добро долази у таквим ситуацијама.

Клаузула ВХЕРЕ Синтакса
Основна синтакса клаузуле ВХЕРЕ када се користи у МиСКЛ СЕЛЕЦТ ВХЕРЕ изразу је следећа.
SELECT * FROM tableName WHERE condition;
ОВДЕ
- „СЕЛЕЦТ * ФРОМ таблеНаме“ је стандардни СЕЛЕЦТ израз
- „ВХЕРЕ“ је кључна реч која ограничава наш одабрани резултат резултата упита, а „цондитион“ је филтер који се примењује на резултате. Филтер може бити опсег, појединачна вредност или подупит.
Погледајмо сада практични пример .
Претпоставимо да желимо да добијемо личне податке члана из табеле чланова с обзиром на број чланства 1, користили бисмо следећу скрипту да бисмо то постигли.
SELECT * FROM `members` WHERE `membership_number` = 1;
Извршавање горње скрипте у МиСКЛ радном окружењу на „мифликдб“ би дало следеће резултате.
membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. |
Клаузула ВХЕРЕ у комбинацији са - АНД ЛОГИЦАЛ Оператор
Услов ВХЕРЕ у МиСКЛ када се користи заједно са логичким оператором АНД извршава се само ако су испуњени СВИ наведени критеријуми филтера. Погледајмо сада практични пример - Претпоставимо да желимо да добијемо листу свих филмова из категорије 2 који су објављени 2008. године, користили бисмо скрипту приказану доле да то постигнемо.
SELECT * FROM `movies` WHERE `category_id` = 2 AND `year_released` = 2008;
Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
movie_id | title | director | year_released | category_id |
---|---|---|---|---|
2 | Forgetting Sarah Marshal | Nicholas Stoller | 2008 | 2 |
Клаузула ВХЕРЕ у комбинацији са - ОР ЛОГИЦАЛ Оператор
Клаузула ВХЕРЕ када се користи заједно са оператором ОР извршава се само ако су испуњени било који или читави наведени критеријуми филтера. Следећа скрипта укључује све филмове у категорији 1 или категорији 2SELECT * FROM `movies` WHERE `category_id` = 1 OR `category_id` = 2;
Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
movie_id | title | director | year_released | category_id |
---|---|---|---|---|
1 | Pirates of the Caribean 4 | Rob Marshall | 2011 | 1 |
2 | Forgetting Sarah Marshal | Nicholas Stoller | 2008 | 2 |
Клаузула ВХЕРЕ у комбинацији са - ИН Кључна реч
Клаузула ВХЕРЕ у МиСКЛ, када се користи заједно са кључном речи ИН, утиче само на редове чије вредности се подударају са листом вредности наведеном у кључној речи ИН. Изјава МиСКЛ ИН помаже у смањењу броја клаузула ИЛИ које ћете можда морати користити. Следећи МиСКЛ ВХЕРЕ ИН упит даје редове у којима је број члана 1, 2 или 3SELECT * FROM `members` WHERE `membership_number` IN (1,2,3);
Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. |
2 | Janet Smith Jones | Female | 23-06-1980 | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. |
3 | Robert Phil | Male | 12-07-1989 | 3rd Street 34 | NULL | 12345 | This email address is being protected from spambots. You need JavaScript enabled to view it. |
Клаузула ВХЕРЕ у комбинацији са - НОТ ИН Кеиворд
Клаузула ВХЕРЕ када се користи заједно са кључном речи НОТ ИН НЕ СМЕТЕ утицати на редове чије се вредности подударају са листом вредности наведеном у кључној речи НОТ ИН. Следећи упит даје редове где број_члана НИЈЕ 1, 2 или 3SELECT * FROM `members` WHERE `membership_number` NOT IN (1,2,3);
Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
---|---|---|---|---|---|---|---|
4 | Gloria Williams | Female | 14-02-1984 | 2nd Street 23 | NULL | NULL | NULL |
Клаузула ВХЕРЕ у комбинацији са - ЦОМПАРИСОН Оператори
Оператори упоређивања мање од (), једнако (=), а не једнако () могу се користити са ВХЕРЕ клаузулом= Једнако
Следећа скрипта узима све женске чланове из табеле чланова користећи оператор једнак упоређивању.SELECT * FROM `members` WHERE `gender` = 'Female';
Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
membership_number | full_names | gender | date_of_birth | physical_address | postal_address | contct_number | |
---|---|---|---|---|---|---|---|
1 | Janet Jones | Female | 21-07-1980 | First Street Plot No 4 | Private Bag | 0759 253 542 | This email address is being protected from spambots. You need JavaScript enabled to view it. |
2 | Janet Smith Jones | Female | 23-06-1980 | Melrose 123 | NULL | NULL | This email address is being protected from spambots. You need JavaScript enabled to view it. |
4 | Gloria Williams | Female | 14-02-1984 | 2nd Street 23 | NULL | NULL | NULL |
> Већи од
Следећа скрипта узима све исплате веће од 2.000 из табеле плаћања. ИЗАБЕРИТЕ * ИЗ `плаћања` ГДЕ` износ_плаћен`> 2000; Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.payment_id | membership_number | payment_date | description | amount_paid | external_reference_number |
---|---|---|---|---|---|
1 | 1 | 23-07-2012 | Movie rental payment | 2500 | 11 |
3 | 3 | 30-07-2012 | Movie rental payment | 6000 | NULL |
<> Није једнако
Следећа скрипта добија све филмове чији ИД категорије није 1.SELECT * FROM `movies` WHERE `category_id`<> 1;Извршавање горње скрипте у МиСКЛ радном окружењу против „мифликдб“ даје следеће резултате.
movie_id | title | director | year_released | category_id |
---|---|---|---|---|
2 | Forgetting Sarah Marshal | Nicholas Stoller | 2008 | 2 |
5 | Daddy's Little Girls | NULL | 2007 | 8 |
6 | Angels and Demons | NULL | 2007 | 6 |
7 | Davinci Code | NULL | 2007 | 6 |
9 | Honey mooners | John Schultz | 2005 | 8 |
Резиме
- Клаузула СКЛ ВХЕРЕ користи се за ограничавање броја редова на које утиче упит СЕЛЕЦТ, УПДАТЕ или ДЕЛЕТЕ.
- Услов ВХЕРЕ у СКЛ-у се може користити заједно са логичким операторима као што су АНД и ОР, операторима поређења као што је = = итд.
- Када се користи са логичким оператором АНД, морају бити испуњени сви критеријуми.
- Када се користи са логичким оператором ИЛИ, мора бити испуњен било који од критеријума.
- Кључна реч ИН користи се за одабир редова који одговарају листи вредности.
Мозгалица Претпоставимо да желимо да добијемо списак изнајмљених филмова који нису враћени на време 25.6.2012. Да бисмо то постигли, можемо користити клаузулу СКЛ ВХЕРЕ изјаве заједно са оператором мање од упоређивања и логичким оператором АНД.
SELECT * FROM `movierentals` WHERE `return_date` < '2012-06-25' AND movie_returned = 0;Извршавање горње скрипте у МиСКЛ радном окружењу даје следеће резултате.
reference_number | transaction_date | return_date | membership_number | movie_id | movie_returned |
---|---|---|---|---|---|
14 | 21-06-2012 | 24-06-2012 | 2 | 2 | 0 |