SQL performans vs KATILMAK mı? | Netgez.com
SORU
29 Temmuz 2009, ÇARŞAMBA


SQL performans vs KATILMAK mı?

KATILIN ya da bir bir kullanarak bana doğru sonuçlar verir... genelde daha iyi performansa sahip Olan ve neden bir dava var mı? Ne kadar çalıştırıyorsunuz ne mi bağlı? (BİLGİNİZE MSSQL kullanıyorum)

CEVAP
29 Temmuz 2009, ÇARŞAMBA


Genellikle, IN JOIN konuşma farklı sonuçlar farklı sorgular.

SELECT  a.*
FROM    a
JOIN    b
ON      a.col = b.col

aynı şey değildir

SELECT  a.*
FROM    a
WHERE   col IN
        (
        SELECT  col
        FROM    b
        )

b.col benzersiz deÄŸilse.,

Ancak, bu ilk sorgu için eşanlamlı

SELECT  a.*
FROM    a
JOIN    (
        SELECT  DISTINCT col
        FROM    b
        )
ON      b.col = a.col

Eğer birleştirme sütunu gibi UNIQUE işaretli ise, hem bu sorgu SQL Server aynı plan verim.

Eğer değilse, o zaman IN DISTINCT daha hızlı JOIN daha.

Performans detayları için: blogumda bu makaleye bakın

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

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • How To Cook That

    How To Cook

    16 NÄ°SAN 2011
  • Skittles Page

    Skittles Pag

    28 Mart 2011