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

तालिका 1 से * चुनें जो सशर्त के साथ तालिका 2 में मौजूद नहीं है

LEFT JOIN/IS NULL का उपयोग करना:

   SELECT t.*
     FROM TABLE_LIST t
LEFT JOIN TABLE_LOG tl ON tl.jid = t.jid
    WHERE tl.jid IS NULL

NOT IN का उपयोग करना:

SELECT t.*
  FROM TABLE_LIST t
 WHERE t.jid NOT IN (SELECT tl.jid
                       FROM TABLE_LOG tl
                   GROUP BY tl.jid)

मौजूद नहीं का उपयोग करना:

SELECT t.*
  FROM TABLE_LIST t
 WHERE NOT EXISTS(SELECT NULL
                    FROM TABLE_LOG tl
                   WHERE tl.jid = t.jid)

FYI करें
LEFT JOIN/IS NULL और NOT IN MySQL में समान हैं - वे वही प्रदर्शन करेंगे, जबकि NOT EXISTS धीमा/कम कुशल है। अधिक जानकारी के लिए:http://explainextended.com/2009/09/18/not-in-vs-not-exists-vs-left-join-is-null-mysql/



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ऑटो वृद्धिशील प्राथमिक कुंजी वाले MySQL में डेटा कैसे सम्मिलित करें?

  2. इंडेक्स बनाने के बाद MySQL क्वेरी धीमी है

  3. Django-mailer डेटाबेस को पुनर्स्थापित करते समय MySQL त्रुटि 1118 (पंक्ति आकार बहुत बड़ा)

  4. इको MYSQL परिणाम प्रदर्शन खाली पृष्ठ

  5. ऑनलाइन/ऑफ़लाइन डेटाबेस सिंक्रोनाइज़ेशन - MySQL/PHP