मुझे यकीन है कि मैं बेवकूफ जा रहा हूँ, लेकिन मैं इस एक बाहर निकालने नहीं कर पा रहे हूँ ...जेपीए बाईं अप्रयुक्त प्रविष्टियों
मैं दो तालिकाओं है:
विभाग (था, नाम) कर्मचारी (ईआईडी, पहला, आखिरी, किया गया)
उनके पास संबंधित संस्थाएं हैं जेपीए प्रबंधित विभाग विभाग और कर्मचारी। कर्मचारी के पास एक डिपार्टमेंट फील्ड है, विभाग कर्मचारी सूची को बनाए रखता नहीं है। मैं जो करना चाहता हूं वह उन सभी विभागों को ढूंढता है जिनमें कर्मचारी नहीं हैं। सादे पुराने एसक्यूएल का उपयोग करना बाएं से जुड़ना आसान है:
SELECT d.*
FROM department as d LEFT OUTER JOIN employee as e
ON d.did = e.did
WHERE e.did IS NULL
मैं इस क्वेरी को जेपीक्यूएल में अनुवाद करने का तरीका नहीं देख सकता। जेपीक्यूएल के लिए जो भी उदाहरण मिले हैं, वे लिंक को दूसरे तरीके से लिंक करते हैं, उदाहरण के लिए।
SELECT e FROM Employee e LEFT JOIN e.departmert d
जबकि मैं और अधिक
SELECT d FROM Department d LEFT JOIN d.???? WHERE e.department IS NULL
की तरह कुछ की जरूरत है लेकिन विभाग यह के कर्मचारियों के लिए एक संदर्भ को बनाए रखने नहीं करता है (अपने आवेदन में यह नहीं विभागों और कर्मचारियों है जाहिर है)। क्या यह जेपीक्यूएल में भी संभव है?
शानदार, सही जवाब के लिए धन्यवाद। मानचित्रण स्थापित करने के बजाय क्वेरी के लिए गया था। मुझे यकीन है कि क्वेरी बहुत कुशल नहीं है लेकिन इसे अक्सर नहीं कहा जाएगा। – wobblycogs
जब आइटम संग्रह नहीं होता है, तो "IS EMPTY" भी उपयोग किया जाना चाहिए, लेकिन मैप के साथ केवल एक OneToOne इकाई है? संपादित करें: हाँ, यह काम करता है। – Amalgovinus