यह एक टिप्पणी के लिए बहुत लंबा है। प्राकृतिक जोड़ का प्रयोग न करें। प्राकृतिक जुड़ाव सीखने से परेशान न हों। वे घृणित हैं।
क्यों? शामिल होने की शर्तें समान नामों . वाले स्तंभों पर आधारित होती हैं . प्राकृतिक जुड़ाव घोषित विदेशी कुंजी संबंधों को भी ध्यान में नहीं रखते हैं। ये काफी खतरनाक हो सकता है। या -- मेरे मामले में -- क्योंकि मेरी लगभग सभी तालिकाओं में CreatedAt
. है और CreatedBy
, वैसे भी वे बेकार हैं।
इसके बजाय, join
. को सूचीबद्ध करें चांबियाँ। आपके मामले में (क्योंकि आपके पास select *
. है ), using
खंड सबसे उपयुक्त है:
SELECT *
FROM R JOIN
S
USING (A, B);
इसका यह भी लाभ है कि कुंजियाँ स्पष्ट रूप से क्वेरी में दिखाई जाती हैं, जिससे त्रुटियों की गुंजाइश बहुत कम हो जाती है।