Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर जॉइन लापता NULL मान

आप जुड़ने के बारे में स्पष्ट हो सकते हैं:

SELECT Table1.Col1, Table1.Col2, Table1.Col3, Table2.Col4
FROM Table1 INNER JOIN
     Table2
      ON (Table1.Col1 = Table2.Col1 or Table1.Col1 is NULL and Table2.Col1 is NULL) AND
         (Table1.Col2 = Table2.Col2 or Table1.Col2 is NULL and Table2.Col2 is NULL)

व्यवहार में, मेरे द्वारा coalesce() . का उपयोग करने की अधिक संभावना होगी शामिल होने की स्थिति में:

SELECT Table1.Col1, Table1.Col2, Table1.Col3, Table2.Col4
FROM Table1 INNER JOIN
     Table2
     ON (coalesce(Table1.Col1, '') = coalesce(Table2.Col1, '')) AND
        (coalesce(Table1.Col2, '') = coalesce(Table2.Col2, ''))

जहां '' एक मान होगा जो किसी भी तालिका में नहीं है।

सिर्फ चेतावनी का एक शब्द। अधिकांश डेटाबेस में, इनमें से किसी भी संरचना का उपयोग अनुक्रमणिका के उपयोग को रोकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कई पंक्तियों को जोड़ना

  2. IN ऑपरेटर SQL

  3. चयन/अद्यतन पर गतिरोध

  4. चर शीर्षलेख वाली एक्सेल फ़ाइलें आयात करना

  5. SQL सर्वर में XML में सेल्फ-क्लोजिंग टैग