2011-05-07 19 views
7

एसक्यूएल सर्वर 2008 में शामिल हों:एसक्यूएल सर्वर 2008 - कैसे 3 टेबल

मैं 3 टेबल

Users, Scores, Lessons 

Users & Scores द्वारा StudentID

Scores & Lessons जुड़े हुए हैं जुड़े हुए हैं है LessonID

द्वारा

मैं StudentID के लिए स्कोर प्रदर्शित करना चाहता हूं। यहां वे कॉलम हैं जिन्हें मैं प्रदर्शित करना चाहता हूं

Users.Name, Scores.LessonID, Scores.Result, Lessons.Title 

मुझे पता है कि 2 टेबल में कैसे शामिल हों। मैं तीसरी टेबल में कैसे फेंक सकता हूं?

+0

चेक करने के लिए कैसे [एकाधिक तालिकाओं से डेटा पुनः प्राप्त एसक्यूएल शामिल साथ] (http://databases.about.com/od/careers/l/aajoins1 । एचटीएम) - – mcha

उत्तर

15

एक ही रास्ता एक तालिका के रूप में:

SELECT Users.Name, Scores.LessonID, Scores.Result, Lessons.Title 
FROM Users 
INNER JOIN Scores ON Users.StudentID = Scores.StudentID 
INNER JOIN Lessons On Scores.LessonID = Lessons.LessonID 
+1

से अगर आप अपनी टेबल पर 'dbo.' उपसर्ग जोड़ते हैं (हमेशा अनुशंसित) और अपनी क्वेरी को और अधिक पठनीय बनाने के लिए टेबल उपनाम का उपयोग शुरू करें - यह सही जवाब होगा! –

+0

निश्चित रूप से, लेकिन उन चीजों में से कोई भी सवाल नहीं था। –

+1

सच। लेकिन मार्क ने आपको खुद को सुधारने के लिए कुछ सुझाव दिए, और अपने उत्तरों की गुणवत्ता को बढ़ाकर, प्रश्न पूछने वाले और भविष्य के सभी दर्शक भी और सीखते हैं। – Konerak

0
SELECT * 
FROM T1 
    INNER JOIN T2 
    ON T2.C = T1.C 
    INNER JOIN T3 
       LEFT JOIN T4 
       ON T4.C = T3.C 
    ON T3.C = T2.C 


is equivalent to (T1 Inner Join T2) Inner Join (T3 Left Join T4) 
संबंधित मुद्दे