मेरे पास एक ऐसी स्थिति है जहां मेरे पास शीर्षकों (टी 1) की एक तालिका है और कई लिंक वाले एक अन्य टेबल हैं जो इन शीर्षकों (टी 2) को कई रिश्तों में संदर्भित करते हैं।MySQL कई रिश्तों के लिए सिंटैक्स में शामिल हों
मुझे जो चाहिए वह ध्वज के साथ लौटाए गए शीर्षकों की पूरी सूची है जो इंगित करता है कि इससे जुड़े एक विशिष्ट लिंक हैं या नहीं।
वाम जुड़ें और समूह द्वारा:
SELECT
t1.id
, t1.title
, t2.link_id AS refId
FROM
t1
LEFT JOIN t2
ON (t1.id = t2.title_id)
GROUP BY t1.id;
यह करीब है के रूप में यह मेरे या तो पहले link_id या शून्य देता refId कॉलम में।
अब, यदि मैं पूरे डेटा सेट के माध्यम से टी 2 चलाने की बजाय एक विशिष्ट लिंक_आईडी है तो मैं परिणामों को कैसे रोकूं?
मैं एक कहां खंड, उदाहरण के लिए जोड़ देते हैं तो:
WHERE t2.link_id = 123
मैं केवल कुछ रिकॉर्ड जहां link_id मैचों लेकिन मैं अभी भी refId स्तम्भ में व्यर्थ के साथ वापस आ खिताब का पूरा सेट की जरूरत है पाने के लिए जब तक link_id = 123.
आशा किसी को इसके बजाय कहां खंड में की
ठनक दोनों इस बात के लिए के लिए शर्त में शामिल होने में यह रखो। अच्छी तरह से काम। :) – Das123