6. Analysts ना रोज भेटणारे SQL Data Types
6.1 TEXT, INTEGER, REAL आणि NUMERIC: Analysts साठी सोपी माहिती
का (Why). एखादा आकडा text म्हणून साठवला असेल तर filter किंवा total चुकू शकतो. म्हणून प्रत्येक column मध्ये कुठल्या प्रकारची value आहे ते माहीत हवं.
काय (What). SQLite प्रत्येक value पाच storage classes पैकी एकात ठेवतं: NULL, INTEGER (पूर्ण आकडे), REAL (दशांश आकडे), TEXT आणि BLOB (raw bytes). NUMERIC सारखा column type हा फक्त एक पसंती असतो, याला affinity म्हणतात. SQLite मध्ये वेगळा BOOLEAN type नाही, म्हणून हो आणि नाही 1 आणि 0 म्हणून साठवले जातात.
कसं (How). Column वर typeof() function वापरा. ते प्रत्येक row मधल्या value चा storage class सांगतं.
पायऱ्या
- DB Browser for SQLite मध्ये northstar_bank.db उघडा.
- Execute SQL tab उघडा.
- पहिलं उदाहरण run करा आणि प्रत्येक row साठी typeof column वाचा.
- हो किंवा नाही flag 1 किंवा 0 म्हणून कसा साठवला जातो ते बघायला दुसरं उदाहरण run करा.
उदाहरणे
उदाहरण 1 · dataset: northstar_bank
SELECT txn_id,
typeof(txn_id) AS id_type,
typeof(amount) AS amount_type,
typeof(txn_type) AS type_type,
typeof(cleared_on) AS cleared_type
FROM transactions
WHERE txn_id IN (1, 15);Output
| txn_id | id_type | amount_type | type_type | cleared_type |
|---|---|---|---|---|
| 1 | integer | real | text | text |
| 15 | integer | real | text | null |
Meaning. txn_id हा INTEGER आहे, amount हा REAL दशांश आकडा आहे आणि txn_type हा TEXT आहे. Row 15 ची clearing date अजून नाही, म्हणून cleared_on NULL आहे.
उदाहरण 2 · dataset: northstar_bank
SELECT holder_name, kyc_done
FROM accounts
WHERE kyc_done = 0;Output
| holder_name | kyc_done |
|---|---|
| Diego Alvarez | 0 |
| Lucas Martin | 0 |
Meaning. या दोन customers चं KYC, म्हणजे ओळख तपासणी, अजून पूर्ण झालेलं नाही. हा flag false शब्द म्हणून नाही तर 0 या आकड्याने साठवला आहे.
Ravindra Bagale's Tip
Before you build a report on a new table, run typeof() on its main columns. It takes one minute and saves hours.
Ravindra Bagale's Tip – मराठी
नवीन table वर report बनवण्याआधी त्याच्या मुख्य columns वर typeof() चालवा. एक मिनिट लागतो आणि तासन् तास वाचतात.
Ravindra Bagale's Tip – हिंदी
नई table पर report बनाने से पहले उसके मुख्य columns पर typeof() चलाइए। एक मिनट लगता है और घंटों की बचत होती है।