मैं अपने काम के लिए डेटाबेस बना रहा हूं और मुझे यह प्रश्न बनाने के तरीके को समझने में परेशानी हो रही है।mysql कई कॉलम के साथ शामिल हो गया
मेरी समस्या के लिए प्रासंगिक टेबल हैं:
काम
Surgical_Planning - विदेशी कुंजी के रूप में काम किया है, कुछ नौकरियों के लिए मौजूद है, दूसरों
Medical_Model के लिए नहीं है - विदेशी कुंजी के रूप में काम किया है , काम के साथ संबंध 1 1 के लिए
यह है जहाँ मैं शल्य नियोजन के बारे में कोई जानकारी नहीं है एक काम क्वेरी है
मुझे लगता है कि मैं एक बाएं शामिल करना चाहता हूं ताकि यह उपरोक्त क्वेरी में सभी जानकारी के साथ क्रमशः प्रत्येक नौकरी प्रदर्शित करे, लेकिन फिर जब नौकरी के लिए सर्जिकल_Planning है # मैं चाहता हूं कि एक स्तंभ हो इसके लिए भी। यहाँ मेरी प्रयास है कि
SELECT
job,
physician_idphysician as Physician,
patient_idpatient as Patient,
status,
DATE_FORMAT(scan_date, '%M %e, %Y, %l:%i%p') as Scan_Date,
DATE_FORMAT(timestamp, '%M %e, %Y, %l:%i%p') as Recieved,
DATE_FORMAT(date_required, '%M %e, %Y, %l:%i%p') as Date_Required
FROM
job, patient_has_physician as phys, Scan, Medical_Model as med
LEFT JOIN Surgical_Planning ON job.job = Surgical_Planning.job_job
AND Scan.job_job = job AND phys.job_job = job
AND med.job_job = job AND job.type = 'medical'
काम नहीं कर रहा है कि मैं इस बुनियादी बाईं प्राप्त कर सकते हैं जिस तरह से मैं चाहता हूँ काम कर शामिल होने है, लेकिन यह काम नहीं करता है इसके बाद के संस्करण की तरह अगर मैं अधिक स्तंभ जोड़ना चाहते हैं।
SELECT job, planning_id
FROM job
LEFT JOIN Surgical_Planning ON job = Surgical_Planning.job_job
एक सबक्वायरी भी इस्तेमाल किया जा सकता है? मैं इन और बुनियादी प्रश्नों को समझ सकता हूं लेकिन इन जटिल जटिलताओं और उप-वर्गों में वास्तव में परेशानी है। किसी भी सलाह की सराहना की है।
संपादित करें --- नौकरी तालिका स्कीमा
- टेबल mmrl
। job
ड्रॉप तालिका यदि mmrl
मौजूद है। job
;
तालिका बनाएं यदि mmrl
मौजूद नहीं है।job
(
job
INT (11) नहीं NULL AUTO_INCREMENT,
type
VARCHAR (45) शून्य,
status
VARCHAR (45) शून्य डिफ़ॉल्ट शून्य,
timestamp
टाइमस्टैम्प नहीं NULL डिफ़ॉल्ट CURRENT_TIMESTAMP पर अद्यतन CURRENT_TIMESTAMP,
प्राथमिक कुंजी (job
))
इंजन = इनो डीबी
डेफॉल्ट वर्णक सेट = लैटिन 1;
LEFT JOIN Surgical_Planning ON job.job = Surgical_Planning.job_job
AND Scan.job_job = job AND phys.job_job = job
AND med.job_job = job AND job.type = 'medical'
को
LEFT JOIN Surgical_Planning ON job.job = Surgical_Planning.job_job
WHERE Scan.job_job = job AND phys.job_job = job
AND med.job_job = job AND job.type = 'medical'
संपादित