Logické operácie v SQL dotaze v PHP
V podmienke výberu môžete vytvárať zložitejšie
kombinácie pomocou príkazov OR a AND.
Fungujú rovnako ako ich analógie v PHP
konštrukcii if. Pozrime sa na príkladoch.
Príklad
Vyberieme používateľov so mzdou 500 A vekom
23 rokov:
<?php
$query = "SELECT * FROM users WHERE salary=500 AND age=23";
?>
Príklad
Vyberieme používateľov so mzdou 500 ALEBO
vekom 23 rokov:
<?php
$query = "SELECT * FROM users WHERE salary=500 OR age=23";
?>
Príklad
Vyberieme používateľov so mzdou od 450
do 900:
<?php
$query = "SELECT * FROM users WHERE salary>450 AND salary<900";
?>
Príklad
Vyberieme používateľov s vekom od 23 do
27 rokov vrátane:
<?php
$query = "SELECT * FROM users WHERE age>=23 AND age<=27";
?>
Príklad
Zložité kombinácie príkazov OR a AND
možno zoskupovať pomocou okrúhlych zátvoriek,
aby sa ukázala priorita podmienok:
<?php
$query = "SELECT * FROM users WHERE (age<20 AND age>27) OR (salary>300 AND salary<500)";
?>
Praktické úlohy
Vyberte používateľov vo veku od 25 (nie
vrátane) do 28 rokov (vrátane).
Vyberte používateľa user1.
Vyberte používateľov user1 a user2.
Vyberte všetkých okrem používateľa user3.
Vyberte všetkých používateľov vo veku 27
rokov alebo so mzdou 1000.
Vyberte všetkých používateľov vo veku 27
rokov alebo so mzdou nie rovnou 400.
Vyberte všetkých používateľov vo veku od 23
rokov (vrátane) do 27 rokov (nie vrátane)
alebo so mzdou 1000.
Vyberte všetkých používateľov vo veku od 23
rokov do 27 rokov alebo so mzdou od 400
do 1000.