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

  • Missouri Star Quilt Company

    Missouri Sta

    18 ŞUBAT 2009
  • PaulGBelliveau

    PaulGBellive

    5 Mart 2009
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012