Loginės operacijos SQL užklausoje PHP
Atrankos sąlygoje galima daryti sudėtingesnes
kombinacijas naudojant komandas OR ir AND.
Jos veikia taip pat, kaip ir jų analogai PHP
konstrukcijoje if. Pažiūrėkime
pavyzdžiais.
Pavyzdys
Atrankime vartotojus su atlyginimu 500 IR amžiumi
23 metų:
<?php
$query = "SELECT * FROM users WHERE salary=500 AND age=23";
?>
Pavyzdys
Atrankime vartotojus su atlyginimu 500 ARBA
amžiumi 23 metų:
<?php
$query = "SELECT * FROM users WHERE salary=500 OR age=23";
?>
Pavyzdys
Atrankime vartotojus su atlyginimu nuo 450
iki 900:
<?php
$query = "SELECT * FROM users WHERE salary>450 AND salary<900";
?>
Pavyzdys
Atrankime vartotojus su amžiumi nuo 23 iki
27 metų imtinai:
<?php
$query = "SELECT * FROM users WHERE age>=23 AND age<=27";
?>
Pavyzdys
Sudėtingas OR ir AND komandų
kombinacijas galima grupuoti naudojant apvalius skliaustus,
kad parodytumėte sąlygų prioritetą:
<?php
$query = "SELECT * FROM users WHERE (age<20 AND age>27) OR (salary>300 AND salary<500)";
?>
Praktinės užduotys
Atrankite vartotojus, kurių amžius nuo 25 (ne
imtinai) iki 28 metų (imtinai).
Atrankite vartotoją user1.
Atrankite vartotojus user1 ir user2.
Atrankite visus, išskyrus vartotoją user3.
Atrankite visus vartotojus, kurių amžius 27
metų arba atlyginimas 1000.
Atrankite visus vartotojus, kurių amžius 27
metų arba atlyginimas nelygus 400.
Atrankite visus vartotojus, kurių amžius nuo 23
metų (imtinai) iki 27 metų (ne imtinai)
arba atlyginimas 1000.
Atrankite visus vartotojus, kurių amžius nuo 23
metų iki 27 metų arba atlyginimas nuo 400
iki 1000.