Operatory logiczne w SQL Server jak sama nazwa wskazuje, służą do wprowadzenia logicznych warunków do naszego zapytania. Operatory można używać oddzielnie oraz łączyć ze sobą. Poniżej przykłady.
Najczęściej używane operatory logiczne:
IN – Wskazuje wartości zawierające się w określonym przez nas zbiorze. Dodane przed IN operatora NOT, zwróci nam rekordy, zawierjące każde inne wartości niż podane.
1 2 3 4 5 | use adventureworks2014 go select * from production.product where color in ('Black','Silver', NULL) go |
1 2 3 | select * from production.product where color not in ('Black','Silver') go |
AND, OR, NOT – Standardowe operatory logiczne, za pomocą których możemy wprowadzić w naszym wyrażeniu składnie i, lub, nie.
1 2 3 4 5 6 | use adventureworks2014 go select * from production.product where (color = 'Black' or color = 'silver') and productline not in ('M') go |
BETWEEN – Operator pomaga nam wylistować wartości zawierające się danym przedziale. Poniżej zapytanie zwracające wszystkie rekordy, które w kolumnie productid mają wartości pomiędzy 300 i 400.
1 2 3 4 5 | use adventureworks2014 go select * from production.product where ProductID between 300 and 400 go |
LIKE – operator służy do sprawdzania wartości podobnych. Możemy go użyć, gdy np chcemy w naszym zapytaniu wylistować rekordy, które zawierają wartości podobne do naszego warunku. “%” – zastępuje dowolną frazę, “_” – zastępuje dowolny jeden znak. Poniższe zapytanie zwraca rekordy, które w kolumnie name zawierają frazę “PAINT”. Zamiast like można stosować NOT LIKE – wskaże nam to wynik z odwrotną logiką.
1 2 3 4 5 | use adventureworks2014 go select * from production.Location where upper(name) like '%PAINT%' GO |
Pozostałe operatory logiczne:
ANY
SOME
EXIST
ALL