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

SQL में प्राकृतिक जुड़ाव को समझना

यह एक टिप्पणी के लिए बहुत लंबा है। प्राकृतिक जोड़ का प्रयोग न करें। प्राकृतिक जुड़ाव सीखने से परेशान न हों। वे घृणित हैं।

क्यों? शामिल होने की शर्तें समान नामों . वाले स्तंभों पर आधारित होती हैं . प्राकृतिक जुड़ाव घोषित विदेशी कुंजी संबंधों को भी ध्यान में नहीं रखते हैं। ये काफी खतरनाक हो सकता है। या -- मेरे मामले में -- क्योंकि मेरी लगभग सभी तालिकाओं में CreatedAt . है और CreatedBy , वैसे भी वे बेकार हैं।

इसके बजाय, join . को सूचीबद्ध करें चांबियाँ। आपके मामले में (क्योंकि आपके पास select * . है ), using खंड सबसे उपयुक्त है:

SELECT * 
FROM R JOIN
     S
     USING (A, B);

इसका यह भी लाभ है कि कुंजियाँ स्पष्ट रूप से क्वेरी में दिखाई जाती हैं, जिससे त्रुटियों की गुंजाइश बहुत कम हो जाती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP रजिस्ट्रेशन फॉर्म से मैसकल में सेव नहीं होने की तारीख

  2. एक बाउंडिंग बॉक्स के अंदर सभी भू-स्थानिक बिंदुओं का चयन करें

  3. MySql:Tinyint (2) बनाम tinyint(1) - क्या अंतर है?

  4. MySQL में एकाधिक पंक्तियों को कैसे मर्ज करें?

  5. मैसकल गिनती आवृत्ति