SQL je močan jezik za obdelavo podatkov, ki se lahko uporablja za izvajanje različnih nalog, vključno z pridobivanjem, spreminjanjem in brisanjem podatkov. Če ste že poznavalci osnov SQL, vam lahko ti napredni triki pomagajo pri izboljšanju vaše učinkovitosti in produktivnosti pri delu s podatki.
Tukaj je nekaj naprednih SQL trikov, ki jih lahko uporabite:
Uporaba funkcije HAVING
za filtriranje podatkov, ki so že filtrirani z uporabo funkcije GROUP BY
. To je odličen način za pridobitev bolj specifičnega povzetka podatkov. Na primer, ta poizvedba bo vrnila seznam držav z največjo številko uporabnikov, ki so registrirani v zadnjih 30 dneh:
SELECT country, COUNT(*) AS number_of_users
FROM users
GROUP BY country
HAVING registration_date > CURDATE() - INTERVAL 30 DAY;
Uporaba funkcije UNION
za združevanje rezultatov dveh ali več poizvedb. To je odličen način za združevanje podatkov iz dveh ali več virov v eno tabelo. Na primer, ta poizvedba bo združila rezultate poizvedb o uporabnikih in naročil v eno tabelo, ki vsebuje uporabniško ime, ID naročila in datum naročila:
SELECT users.username, orders.order_id, orders.order_date
FROM users
UNION
SELECT orders.username, orders.order_id, orders.order_date
FROM orders;
Uporaba funkcije EXCEPT
za odstranitev vrstic iz ene tabele, ki so prisotne v drugi tabeli. To je odličen način za primerjavo podatkov iz dveh ali več virov in identifikacijo razlik. Na primer, ta poizvedba bo vrnila seznam uporabnikov, ki imajo naročila, vendar niso registrirani na spletnem mestu:
SELECT users.username
FROM users
EXCEPT
SELECT orders.username
FROM orders;
Uporaba funkcije INTERSECT
za vrnitev samo vrstic, ki so prisotne v obeh tabelah. To je odličen način za identifikacijo skupnih vrstic med dvema ali več viri. Na primer, ta poizvedba bo vrnila seznam uporabnikov, ki imajo naročila in so registrirani na spletnem mestu:
SELECT users.username
FROM users
INTERSECT
SELECT orders.username
FROM orders;