मेरे पास 3 टेबल हैं,
T1 has columns: date, id
T2 has columns: selected_id
T3 has columns: start_date, end_date
T4 तालिका बनाने का लक्ष्य।
मैं T1 से T1 में शामिल होना चाहता हूँ T1.id = T2.selected_id पर, जहां T1.date T3.start_date और T3.end_date के बीच है।
इसलिए मैं निम्नानुसार लिखता हूं:
create table T4 as
(select T1.*, T2.* from T1
inner join T2 on T1.id = T2.selected_id
where T1.date between T3.start_date and T3.end_date);
हालाँकि, T3 के पास T1 से संबंधित कोई विदेशी कुंजी नहीं है, इसलिए यह कार्य नहीं करता है। क्या समस्या को हल करने के लिए कोई सुझाव हैं?
उत्तर:
जवाब के लिए 2 № 1आप कहते हैं कि T3 में केवल 1 पंक्ति है। यह बड़ा अजीब है। बस जिज्ञासु आप यह बता सकते हैं कि आपने इसे किस उद्देश्य से बनाया है?
आपकी समस्या के लिए: आपकी क्वेरी को इस तरह दिखना चाहिए:
create table T4 as
(
select T1.*, T2.*
from
T1 inner join T2
on T1.id = T2.selected_id
join T3
on T1.date between T3.start_date and T3.end_date);