logo

МиСКЛ Боолеан

Боолеан је најједноставнији тип података који увек враћа две могуће вредности, било тачно или нетачно. Увек се може користити за добијање потврде у облику вредности ДА или НЕ.

МиСКЛ не садржи уграђени Боолеан или Боол тип података. Они пружају а ТИНИИНТ тип података уместо Буловог или Буловог типа података. МиСКЛ сматра се да је вредност нула лажна, а вредност различита од нуле тачна. Ако желите да користите Булове литерале, користите труе или фалсе који увек процењују вредност 0 и 1. 0 и 1 представљају целобројне вредности.

Извршите следећу наредбу да видите целобројне вредности Булових литерала:

 Mysql> Select TRUE, FALSE, true, false, True, False; 

Након успешног извршења, појављује се следећи резултат:

МиСКЛ Боолеан

МиСКЛ Боолеан пример

Можемо да ускладиштимо Булову вредност у МиСКЛ табели као целобројни тип података. Хајде да направимо табелу ученика која показује употребу Буловог типа података у МиСКЛ-у:

 mysql> CREATE TABLE student ( studentid INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(40) NOT NULL, age VARCHAR(3), pass BOOLEAN ); 

У горњем упиту, можемо видети да је поље пасс дефинисано као Боолеан када се приказује дефиниција табеле; садржи ТИНИИНТ на следећи начин:

цм у стопе и инче
 mysql> DESCRIBE student; 

МиСКЛ Боолеан

Хајде да додамо два нова реда у горњу табелу уз помоћ следећег упита:

 mysql> INSERT INTO student(name, pass) VALUES('Peter',true), ('John',false); 

Када се горњи упит изврши, МиСКЛ одмах проверава да ли постоји Булов тип података у табели. Ако се пронађу Булови литерали, биће конвертовани у целобројне вредности 0 и 1. Извршите следећи упит да бисте добили податке из табеле ученика:

 Mysql> SELECT studentid, name, pass FROM student; 

Добићете следећи излаз где се тачан и нетачан литерал претвара у вредност 0 и 1.

МиСКЛ Боолеан

Пошто МиСКЛ увек користи ТИНИИНТ као Булов, такође можемо да убацимо било које целобројне вредности у Булову колону. Изврши следећу наредбу:

 Mysql> INSERT INTO student(name, pass) VALUES('Miller',2); 

Добићете следећи резултат:

МиСКЛ Боолеан

У неким случајевима морате добити резултат у истинитим и лажним литералима. У том случају, потребно је да извршите функцију иф() са наредбом селецт на следећи начин:

 Mysql> SELECT studentid, name, IF(pass, 'true', 'false') completed FROM student1; 

То ће дати следећи излаз:

МиСКЛ Боолеан

МиСКЛ логички оператори

МиСКЛ нам такође омогућава да користимо операторе са Буловим типом података. Извршите следећи упит да бисте добили све пролазне резултате ученика табеле.

 SELECT studentid, name, pass FROM student1 WHERE pass = TRUE; 

Ова изјава враћа следећи излаз:

МиСКЛ Боолеан

Горња изјава враћа резултат пролаза само ако је вредност једнака 1. Можемо то поправити коришћењем ИС оператер. Овај оператор потврђује вредност помоћу Булове вредности. Следећа изјава то објашњава:

 SELECT studentid, name, pass FROM student1 WHERE pass is TRUE; 

Након извршења ове изјаве, добићете следећи резултат:

МиСКЛ Боолеан

Ако желите да видите резултат на чекању, користите ЈЕ ЛАЖНО или НИЈЕ ИСТИНА оператер као доле:

 SELECT studentid, name, pass FROM student1 WHERE pass IS FALSE; OR, SELECT studentid, name, pass FROM student1 WHERE pass IS NOT TRUE; 

Добићете следећи излаз:

МиСКЛ Боолеан