Sobes.tech
Middle

Kuidas saada SQL-is väärtused ühest tabelist, mida teises pole?

sobes.tech AI

Vastus AI-lt

Selleks, et saada väärtused ühest tabelist, mida teises pole, kasutatakse SQL-is tavaliselt konstruktsiooni LEFT JOIN ja NULL kontrolli või NOT EXISTS operaatorit.

Näide LEFT JOIN-iga:

SELECT t1.*
FROM table1 t1
LEFT JOIN table2 t2 ON t1.id = t2.id
WHERE t2.id IS NULL;

Siin valitakse kõik kirjed tabelist table1, mille jaoks puuduvad vastavad kirjed tabelis table2.

Näide NOT EXISTS-iga:

SELECT *
FROM table1 t1
WHERE NOT EXISTS (
  SELECT 1
  FROM table2 t2
  WHERE t2.id = t1.id
);

Mõlemad meetodid on tõhusad, valik sõltub konkreetse andmebaasisüsteemi ja olukorra nõuetest.