Ravindra BagaleCourses & study guides Track your progress

10. Analysts रोज वापरतात ती Text Functions

10.4 substr() ने text चा तुकडा कसा काढायचा

का (Why). Codes मध्ये ठराविक जागांवर अर्थ दडलेला असतो. Tracking code ची पहिली तीन अक्षरं शहर सांगू शकतात, आणि शेवटचा भाग serial number असू शकतो.

काय (What). substr(text, start, length) text चा एक तुकडा देतं. पहिलं अक्षर जागा 1 वर असतं, 0 वर नाही. Length दिली नाही तर शेवटपर्यंतचा सगळा text मिळतो. SQLite मध्ये negative start उजवीकडून मोजतो, म्हणून substr(code, -5) शेवटची पाच अक्षरं देतं. इतर databases negative start वेगळा वापरतात, म्हणून query दुसरीकडे नेण्याआधी तपासा.

कसं (How). प्रत्येक tracking code चे city code, hub code चा भाग आणि serial number असे तुकडे करा.

पायऱ्या

  1. Shipments 1001 आणि 1006 साठी उदाहरण run करा.
  2. city_code वाचा: जागा 1 ते 3.
  3. hub_part वाचा: जागा 1 ते 6, जो hubs.hub_code शी जुळायला हवा.
  4. serial वाचा: negative start वापरून घेतलेली शेवटची पाच अक्षरं.

उदाहरणे

उदाहरण 1 · dataset: swiftship_logistics

SELECT tracking_code,
       substr(tracking_code, 1, 3) AS city_code,
       substr(tracking_code, 1, 6) AS hub_part,
       substr(tracking_code, -5)   AS serial
FROM shipments
WHERE shipment_id IN (1001, 1006);

Output

tracking_codecity_codehub_partserial
PNQ-01-00017PNQPNQ-0100017
LHR-03-00221LHRLHR-0300221

Meaning. PNQ-01-00017 चे PNQ, PNQ-01 आणि 00017 असे तुकडे होतात. LHR-03-00221 चे LHR, LHR-03 आणि 00221 होतात. इथले सगळे codes एकाच ठराविक रचनेचे आहेत म्हणून हे चालतं.

Ravindra Bagale's Tip

Fixed positions work only when every value has the same layout. If the lengths vary, find the separator with instr() first and cut from there.