Ravindra BagaleCourses & study guides Track your progress

14. Tables join का होतात: Keys आणि Relationships

14.4 Practice: आधी कागदावर shipments आणि hubs जुळवा

का (Why). आधी थोडे rows हाताने जुळवले की join ने नक्की काय यायला हवं ते कळतं. मग SQL चा result बरोबर आहे की नाही ते ठरवता येतं.

काय (What). कागदावर प्रत्येक shipment घ्या, त्याचा hub_id वाचा, आणि hubs मध्ये तोच hub_id शोधा. तीन निकाल नोंदवा: एक match, hub अस्तित्वात नाही म्हणून match नाही, आणि hub नसलेला आहे म्हणून match नाही.

कसं (How). Shipments त्यांच्या hub_id सोबत, आणि hubs यांची यादी काढा, आणि कुठलाही join चालवण्याआधी स्वतः जुळवा.

पायऱ्या

  1. पहिलं उदाहरण run करा आणि दहा shipments कागदावर उतरवा.
  2. दुसरं उदाहरण run करा आणि त्यांच्या बाजूला पाच hubs लिहा.
  3. प्रत्येक shipment पासून त्याच्या hub पर्यंत रेघ ओढा; 8 रेघा व्हायला हव्यात.
  4. 1009 ला hub सापडला नाही आणि 1010 ला hub नाही असं लिहा, आणि hub 5 Singapore ला एकही रेघ मिळत नाही ते बघा.

उदाहरणे

उदाहरण 1 · dataset: swiftship_logistics

SELECT shipment_id, customer_id, hub_id
FROM shipments
ORDER BY shipment_id;

Output

shipment_idcustomer_idhub_id
10012011
10022011
10032022
10042033
10052033
10062044
10072051
10082022
10092049
1010205NULL

Meaning. दहा shipments. आठ चा hub_id hubs मध्ये आहे, 1009 चा 9 आहे, आणि 1010 चा NULL आहे.

उदाहरण 2 · dataset: swiftship_logistics

SELECT hub_id, hub_code, city
FROM hubs
ORDER BY hub_id;

Output

hub_idhub_codecity
1PNQ-01Pune
2BOM-02Mumbai
3DXB-01Dubai
4LHR-03London
5SIN-01Singapore

Meaning. पाच hubs. Singapore (hub 5) ची अजून एकही shipment नाही, म्हणून त्याच्यापर्यंत एकही रेघ जात नाही.

Ravindra Bagale's Tip

Write down your expected row count before you run a join. If SQL returns a different number, find out why before you use the result.