vadnica-logo
X

MySQL INTERSECT Operator

INTERSECT operator v MySQL-u uporabljamo za iskanje skupnih zapisov med dvema ali več SELECT poizvedbami. Rezultat je množica vrstic, ki se pojavijo v VSEH uporabljenih poizvedbah. To je posebej uporabno, ko želimo najti podatke, ki so prisotni v več različnih tabelah ali rezultatih poizvedb. Osnovna sintaksa je:

(SELECT stolpci FROM tabela1)
INTERSECT
(SELECT stolpci FROM tabela2);    

Pri uporabi INTERSECT operatorja je pomembno vedeti:

  1. Število in tipi stolpcev v vseh poizvedbah se morajo ujemati
  2. Rezultat ne vsebuje duplikatov
  3. Vrstni red stolpcev mora biti enak v vseh poizvedbah
  4. Vrstni red rezultatov ni določen, razen če uporabimo ORDER BY
PRIMER
REZULTAT
  1. Najprej ustvarimo tabelo "programerji" s stolpci za ID, ime in programski jezik.
    CREATE TABLE programerji (
        id INT,
        ime VARCHAR(50),
        programski_jezik VARCHAR(50)
    );            
  2. Vstavimo podatke o programerjih - pet različnih oseb z njihovimi programskimi jeziki.
    INSERT INTO programerji VALUES (1, 'Ana', 'Python');
    INSERT INTO programerji VALUES (2, 'Boris', 'Java');
    INSERT INTO programerji VALUES (3, 'Cvetka', 'Python');
    INSERT INTO programerji VALUES (4, 'David', 'JavaScript');
    INSERT INTO programerji VALUES (5, 'Eva', 'Java');            
  3. Nato ustvarimo tabelo "vodje_projektov" s stolpci za ID, ime in projekt.
    CREATE TABLE vodje_projektov (
        id INT,
        ime VARCHAR(50),
        projekt VARCHAR(50)
    );            
  4. Vstavimo podatke o vodjih projektov - štiri osebe z njihovimi projekti.
    INSERT INTO vodje_projektov VALUES (1, 'Ana', 'CRM Sistem');
    INSERT INTO vodje_projektov VALUES (3, 'Cvetka', 'Spletna trgovina');
    INSERT INTO vodje_projektov VALUES (6, 'Filip', 'Mobile App');
    INSERT INTO vodje_projektov VALUES (7, 'Grega', 'API Gateway');            
  5. Uporabimo INTERSECT, da najdemo imena oseb, ki so hkrati programerji in vodje projektov.
    SELECT ime FROM programerji
    INTERSECT
    SELECT ime FROM vodje_projektov;            
  6. Rezultat prikaže imeni Ana in Cvetka, saj sta edini osebi, ki sta hkrati programerki in vodji projektov.
    ime
    Ana
    Cvetka            

Hvala za obisk! Dodajam politiko zasebnosti.

© 2024 Vse pravice pridržane.

Vam je koda pomagala? Če želite podpreti moj trud pri pripravi vodičev in vzdrževanju strani, mi lahko namenite donacijo za kavo.