Operator modulo % w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Operator modulo % w SQL

Operator modulo zwraca resztę z dzielenia jednej liczby przez drugą. W wielu systemach baz danych, m.in. MySQL, PostgreSQL i SQL Server, zapisuje się go jako znak %.

Składnia

liczba1 % liczba2

Wynikiem jest reszta z dzielenia liczba1 przez liczba2.

Przykłady

SELECT 10 % 3;

Wynik:

1

Ponieważ 10 / 3 daje 3 reszty 1.

SELECT 15 % 5;

Wynik:

0

Ponieważ 15 dzieli się przez 5 bez reszty.

Typowe zastosowania

Operator modulo jest często używany do sprawdzania podzielności liczb, np. czy liczba jest parzysta:

SELECT id
FROM produkty
WHERE id % 2 = 0;

Zapytanie wybierze rekordy, których id jest liczbą parzystą.

Można go też stosować do grupowania danych cyklicznych, np. co drugi, co trzeci lub co piąty rekord.

Ważne uwagi egzaminacyjne

  • % oznacza resztę z dzielenia, czyli modulo.
  • / oznacza dzielenie.
  • || w niektórych bazach oznacza konkatenację tekstu.
  • & bywa operatorem bitowym AND, ale nie jest operatorem modulo.

W części systemów SQL dostępna jest również funkcja MOD(a, b), np. MOD(10, 3), ale w pytaniu egzaminacyjnym poprawnym operatorem jest %.