كيفية كتابة عبارة SQL التي تحصل على النتائج عبر جدول العلاقة؟(الكثير للكثيرين)

StackOverflow https://stackoverflow.com/questions/208874

  •  03-07-2019
  •  | 
  •  

سؤال

لدي 3 جداول (يحتوي الأرشيف على العديد من الأقسام، القسم (قد) ينتمي إلى العديد من الأرشيفات):

  • archive

    • id PK
    • description
  • archive_to_section

    • archive_id PK FK
    • section_id PK FK
  • section

    • id PK
    • description

كيف سيبدو SQL لسرد جميع الأقسام التي تنتمي إلى معرف أرشيف معين؟

أنا فقط أتعلم SQL.مما قرأته يبدو أنني سأحتاج إلى انضمام أو اتحاد؟لمعلوماتك أنا أستخدم postgres.


[يحرر] هذه هي الإجابة من gdean2323 مكتوبة بدون أسماء مستعارة:

SELECT section.* 
FROM section 
INNER JOIN archive_to_section 
ON section.id = archive_to_section.section_id 
WHERE archive_to_section.archive_id = $this_archive_id
هل كانت مفيدة؟

المحلول

SELECT s.* 
FROM section s INNER JOIN archive_to_section ats ON s.id = ats.section_id 
WHERE ats.archive_id = 1

نصائح أخرى

SELECT s.*
FROM archive_to_section ats
  INNER JOIN section s ON s.id=ats.section_id
WHERE ats.archive_id= @archiveID
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top