11 ŞUBAT 2010, PERŞEMBE
Vs vs SOL BİRLEŞİM NULL DEĞİL'ler arasında ne fark VAR?
SQL sorgu kullanarak aynı şeyi, BOŞ OLDUĞU, ya da SOL KATILIN MEVCUT DEĞİL yapabilirsin gibi geliyor bana. Örneğin:
SELECT a FROM table1 WHERE a NOT IN (SELECT a FROM table2)
SELECT a FROM table1 WHERE NOT EXISTS (SELECT * FROM table2 WHERE table1.a = table2.a)
SELECT a FROM table1 LEFT JOIN table2 ON table1.a = table2.a WHERE table1.a IS NULL
Eğer tüm sözdizimi doğru var emin değilim, ama bu gördüğüm genel teknikler vardır. Neden diğer üzerinden bir tercih yapayım? Performans farklı değil mi...? Bunlardan hangisi / en verimli ve hızlı. Eğer uygulama bağlıdır, ne zaman ki birer? kullanın)
CEVAP
11 ŞUBAT 2010, PERŞEMBE
Özetle:
Biraz farklıdır NOT IN
: asla ama listede NULL
Bir tek ise orada uyuyor.
MySQL
,NOT EXISTS
biraz daha az verimliSQL Server
,LEFT JOIN / IS NULL
daha az etkilidirPostgreSQL
,NOT IN
daha az etkilidirOracle
her üç yöntem de aynıdır.
Bunu Paylaş:
Bool arasında herhangi bir fark var mı...
Ne fark var arasında #include <file...
Bir tam sayı dört milyar verilmiş olan...
SENDİKA ve SENDİKA arasında ne fark va...
Bir GUID ve bir UUID arasında herhangi...