Vs vs SOL BİRLEŞİM NULL DEĞİL'ler arasında ne fark VAR? | Netgez.com
SORU
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 verimli

  • SQL Server, LEFT JOIN / IS NULL daha az etkilidir

  • PostgreSQL, NOT IN daha az etkilidir

  • Oracle her üç yöntem de aynıdır.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:
Sql

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • undrmyumbrellaa

    undrmyumbrel

    25 Temmuz 2012