मेरे पास नीचे दी गई छवि में दिखाए गए तीन सारणी हैं।जॉइन/सबक्वायरी का उपयोग करके एकाधिक तालिकाओं से डेटा का चयन कैसे करें? (PHP-MySQL)
नोट:projectheader तालिका भंडार एक कर्मचारी आईडी की लीड स्तंभ।
मेरे पास करने के लिए क्या चाहते हैं तालिका में एक तरह कुछ पुनः प्राप्त करने के अपने लक्ष्य को सक्षम हो है मैं का उपयोग कर ऐसा नहीं कर पा रहा था
(लीड, कि कर्मचारी के नेतृत्व नाम प्रदर्शित करता है) नीचे दी गई क्वेरी।
SELECT DISTINCT
projectdetails.ProjectDetailsID,
projectheader.ProjectID,
projectheader.ProjectName,
projectheader.Lead,
projectheader.StartDate,
projectheader.EndDate,
projectheader.Status,
projectheader.Remarks,
projectdetails.EmployeeID,
employee.Firstname,
employee.Lastname,
Lead.Leadname
FROM
projectheader,
projectdetails,
employee,
(SELECT
projectheader.ProjectID AS projid,
CONCAT(employee.Firstname,' ',employee.Lastname) AS Leadname
FROM employee, projectheader, projectdetails
WHERE projectheader.ProjectID = projectdetails.ProjectID
AND projectheader.Lead = employee.EmployeeID
) AS Lead
WHERE projectheader.ProjectID = projectdetails.ProjectID
AND projectdetails.EmployeeID = employee.EmployeeID
AND projectheader.ProjectID = Lead.projid
AND projectdetails.ProjectID = Lead.projid
और यह परिणाम मिला:
क्वेरी है कि मैं प्रयोग किया जाता है काफी लंबे समय से है और शायद अच्छी तरह से लिखा नहीं है, मैं कैसे मैं एक ही परिणाम एक बेहतर का उपयोग कर प्राप्त कर सकते थे पर एक अलग तरह से जानना चाहता हूँ एसक्यूएल क्वेरी या तो जॉइन या सबक्वायरी का उपयोग करके। (मैंने प्रोजेक्ट डिस्प्ले की शुरुआत में एक डिस्टिंट जोड़ा। प्रोजेक्ट डिस्प्लेआईडी क्योंकि इसके बिना कुछ पंक्तियां डुप्लिकेट की गई हैं)। मैं वर्तमान में उपयोग कर रहे एक से बेहतर क्वेरी की तलाश में हूं।
बात मत करो के लिए प्रयास करें, बस कार्य करें। –