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

विदेशी कुंजी के साथ तालिकाओं में शामिल होना

मान लें कि आप सब कुछ एक साथ जोड़ना चाहते हैं जैसा कि चाबियों का सुझाव है...

SELECT *
FROM table1
INNER JOIN table3 on table3.table1ID = table1.table1ID
INNER JOIN MEM_INSTR on MEM_INSTR.table2ID = table3.table2ID

लेकिन मान लें कि आपके पास यह परिदृश्य है।

CREATE TABLE Table1 (
    Table1ID NUMBER, 
    Generation NUMBER, 
    ... 
);

CREATE TABLE Table2 (
    Table2ID NUMBER, 
    Table1ID NUMBER, 
    Table1Generation NUMBER, 
    ...
);

आइए तर्क के लिए कहें कि तालिका 1 में एक ही तालिका 1 आईडी के साथ कई रिकॉर्ड हो सकते हैं, और जनरेशन को द्वितीयक कुंजी के रूप में उपयोग किया जाता है। और आपको सही एकल . में तालिका2 रिकॉर्ड में शामिल होने की आवश्यकता है तालिका 1 रिकॉर्ड। आप ONको विस्तृत कर सकते हैं उसी तरह से क्लॉज करें जैसे आप एक WHERE . का विस्तार करेंगे खंड।

SELECT *
FROM table1 t1
INNER JOIN table2 t2 
    ON t2.table1id = t1.table1id 
    AND t2.table1generation = t1.generation


  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. लारवेल - पीडीओ तैयार वक्तव्य - अन्य असंबद्ध प्रश्नों के सक्रिय होने पर प्रश्नों को निष्पादित नहीं किया जा सकता है

  3. Mysqldump का उपयोग करके MySQL InnoDB डेटाबेस को डंप और लोड करने का सबसे तेज़ तरीका क्या है?

  4. macOS पर mysql इंस्टॉल करें

  5. सर्वर स्वचालित रूप से बंद हो रहा है और क्लाइंट को हर बार डेटा भेजने के साथ 'ERR_STREAM_WRITE_AFTER_END' त्रुटि का सामना करना पड़ रहा है