⇧
vadnica-logo
Editor Moj Blog Geselnik Finance Moje storitve O projektu Telegram O meni O meni

Spoznajte različne vrste MySQL operatorjev. Na tej strani boste našli pregled vseh pomembnih operatorjev, njihovo uporabo in praktične primere. Operatorji so razdeljeni v več kategorij: logični, primerjalni, aritmetični in posebni operatorji.

  • baza.sql
💡 SQL simulator, ki ga vidiš tukaj, je moje lastno delo, spisano v JavaScriptu — ne prava baza podatkov. Trudim se, da pokrije čim več primerov, a če se kdaj obnaša čudno, mu ne zaupaj slepo — primer raje preveri še lokalno. 🙂
PRIMER
REZULTAT

Logični operator AND

Poizvedba išče zaposlene iz oddelka "Proizvodnja", ki imajo višje plače od 2000. Uporabili smo logični operator AND, kar pomeni, da morata biti izpolnjena oba pogoja.

SELECT ime, priimek, placa, oddelek 
FROM zaposleni 
WHERE oddelek = 'Proizvodnja' AND placa > 2000;

Poizvedba

Poizvedba uporablja operator BETWEEN, ki išče vrednost v določenem razponu.

SELECT ime, priimek, leto_zaposlitve 
FROM zaposleni 
WHERE leto_zaposlitve BETWEEN 2018 AND 2020;

Manjše ali enako

Tretji primer prikazuje uporabo operatorja manjše ali enako in išče zaposlene s plačo nižjo ali enako od 1800.

SELECT ime, priimek, placa 
FROM zaposleni 
WHERE placa <= '1800';

MySQL Hitri pregled (Cheat Sheet) za operatorje

Operatorji v MySQL vam omogočajo izvajanje matematičnih izračunov, primerjav vrednosti in kompleksnih logičnih operacij znotraj vaših poizvedb. Spodnja tabela vsebuje vse matematične, primerjalne, logične in bitne operatorje s pravilno sintakso ter primeri.

Ime / Operator Opis Sintaksa (HTML) Primer
+ Seštevanje dveh ali več številskih vrednosti. Izraz1 + Izraz2 SELECT cena + 5.00 FROM produkti;
- Odštevanje ene številske vrednosti od druge. Izraz1 - Izraz2 SELECT cena - popust FROM akcije;
* Množenje številskih vrednosti. Izraz1 * Izraz2 SELECT kolicina * cena_kos FROM narocila;
/ Deljenje številskih vrednosti. Izraz1 / Izraz2 SELECT znesek / 2 FROM racuni;
% Ostanek od deljenja (modulo). Izraz1 % Izraz2 SELECT id % 2 FROM zaposleni;
= Preveri, ali sta dve vrednosti enaki. WHERE stolpec = vrednost SELECT * FROM stranke WHERE mesto = 'Kranj';
> Preveri, ali je prva vrednost večja od druge. WHERE stolpec > vrednost SELECT * FROM izdelki WHERE cena > 500;
< Preveri, ali je prva vrednost manjša od druge. WHERE stolpec < vrednost SELECT * FROM ocene WHERE ocena < 70;
>= Preveri, ali je prva vrednost večja ali enaka drugi. WHERE stolpec >= vrednost SELECT * FROM zaposleni WHERE placa >= 2000;
<= Preveri, ali je prva vrednost manjša ali enaka drugi. WHERE stolpec <= vrednost SELECT * FROM zaloga WHERE kolicina_na_zalogi <= 10;
<>, != Preveri, ali sta dve vrednosti različni (nista enaki). WHERE stolpec <> vrednost SELECT * FROM zaposleni WHERE oddelek != 'Prodaja';
<=> NULL-varna primerjava (deluje tudi, če sta vrednosti NULL). WHERE stolpec <=> vrednost SELECT * FROM null_tabela WHERE vrednost <=> NULL;
AND, && Logični IN. Resnično, če sta oba pogoja izpolnjena. WHERE p1 AND p2 SELECT * FROM zaposleni WHERE placa > 1800 AND oddelek = 'Proizvodnja';
OR, || Logični ALI. Resnično, če je izpolnjen vsaj eden od pogojev. WHERE p1 OR p2 SELECT * FROM stranke WHERE mesto = 'Ljubljana' OR mesto = 'Maribor';
NOT, ! Logična negacija. Obrne resničnost pogoja. WHERE NOT pogoj SELECT * FROM akcije WHERE NOT sezona = 'Poletje';
XOR Ekskluzivni ALI. Resnično le, če je natanko eden od pogojev resničen. WHERE p1 XOR p2 SELECT * FROM zaposleni WHERE oddelek = 'Nabava' XOR placa > 2000;
& Bitni IN (Bitwise AND). Primerja vsak bit dveh števil. Izraz1 & Izraz2 SELECT id & 1 FROM zaposleni;
| Bitni ALI (Bitwise OR). Združi bite dveh števil. Izraz1 | Izraz2 SELECT id | 2 FROM zaposleni;
^ Bitni ekskluzivni ALI (Bitwise XOR). Izraz1 ^ Izraz2 SELECT id ^ 1 FROM zaposleni;
~ Bitna negacija (Bitwise NOT). Obrne vse bite števila. ~Izraz SELECT ~id FROM zaposleni;
<< Bitni levi premik (Bitwise Left Shift). Pomakne bite v levo. Izraz << premik SELECT id << 2 FROM zaposleni;
>> Bitni desni premik (Bitwise Right Shift). Pomakne bite v desno. Izraz >> premik SELECT id >> 1 FROM zaposleni;
BETWEEN Preveri, ali je vrednost znotraj določenega zaprtega intervala. WHERE stolpec BETWEEN m1 AND m2 SELECT * FROM izdelki WHERE cena BETWEEN 50.00 AND 200.00;
IN Preveri, ali se vrednost ujema s katerokoli vrednostjo na seznamu. WHERE stolpec IN (v1, v2, ...) SELECT * FROM stranke WHERE mesto IN ('Celje', 'Koper', 'Kranj');
LIKE Išče ujemanje po tekstovnem vzorcu (uporablja % za poljubne znake). WHERE stolpec LIKE vzorec SELECT * FROM zaposleni WHERE priimek LIKE 'K%';
REGEXP Išče ujemanje s pomočjo regularnih izrazov (napredno iskanje teksta). WHERE stolpec REGEXP vzorec SELECT * FROM novice WHERE naslov REGEXP 'gaming|4K';
IS NULL Preveri, ali je vrednost v stolpcu prazna (vsebuje NULL). WHERE stolpec IS NULL SELECT * FROM null_tabela WHERE opomba IS NULL;
IS NOT NULL Preveri, ali stolpec vsebuje kakršnokoli vrednost (ni prazna/NULL). WHERE stolpec IS NOT NULL SELECT * FROM null_tabela WHERE vrednost IS NOT NULL;
DISTINCT Odstrani podvojene vrstice iz izpisa. SELECT DISTINCT stolpec FROM tabela; SELECT DISTINCT oddelek FROM razvrscanje;