"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > SQL में शून्य हैंडलिंग

SQL में शून्य हैंडलिंग

2024-07-31 को प्रकाशित
ब्राउज़ करें:118

NULL Handling in SQL

परिचय

SQL में NULL मानों से निपटना एक मूलभूत पहलू है जिसे प्रत्येक डेटाबेस पेशेवर को समझना चाहिए। NULL डेटाबेस तालिका में गुम या अपरिभाषित मानों का प्रतिनिधित्व करता है, और आपके डेटा संचालन की अखंडता और सटीकता सुनिश्चित करने के लिए इन मानों को सही ढंग से संभालना महत्वपूर्ण है। यह आलेख SQL में NULL की अवधारणा, इसके निहितार्थ और NULL मानों को संभालने के लिए विभिन्न रणनीतियों पर प्रकाश डालेगा।

SQL में NULL को समझना

SQL में NULL एक विशेष मार्कर है जिसका उपयोग यह इंगित करने के लिए किया जाता है कि डेटाबेस में डेटा मान मौजूद नहीं है। यह एक खाली स्ट्रिंग या शून्य मान के बराबर नहीं है। इसके बजाय, NULL किसी भी मूल्य की अनुपस्थिति को दर्शाता है। डेटाबेस तालिका में NULL मानों की उपस्थिति प्रश्नों के परिणामों को प्रभावित कर सकती है, विशेषकर तुलना, एकत्रीकरण और जुड़ाव जैसे संचालन करते समय।

NULL की प्रमुख विशेषताएँ

  1. अनिश्चित मूल्य: NULL एक अज्ञात या अनिश्चित मूल्य का प्रतिनिधित्व करता है।
  2. गैर-तुलनीयता: NULL (उदाहरण के लिए, =, ) वाली तुलना से हमेशा NULL मिलता है, TRUE या FALSE नहीं।
  3. फ़ंक्शंस में विशेष हैंडलिंग: NULL मानों के साथ व्यवहार करते समय कई SQL फ़ंक्शंस का विशिष्ट व्यवहार होता है।

SQL में NULL के साथ कार्य करना

शून्य के लिए जाँच की जा रही है

यह जांचने के लिए कि कोई मान शून्य है या नहीं, आप IS NULL या IS NOT NULL ऑपरेटर का उपयोग करते हैं। उदाहरण के लिए:

SELECT * FROM employees WHERE manager_id IS NULL;

यह क्वेरी उन सभी कर्मचारियों को पुनः प्राप्त करती है जिनके पास प्रबंधक नहीं है।

शून्य और तुलना ऑपरेटर

मानक तुलना ऑपरेटरों (=, !=,

SELECT * FROM employees WHERE manager_id = NULL;

यह क्वेरी कोई पंक्ति नहीं लौटाएगी, भले ही कुछ मैनेजर_आईडी मान शून्य हों। इसके बजाय, आपको इसका उपयोग करना चाहिए:

SELECT * FROM employees WHERE manager_id IS NULL;

एकत्रीकरण में शून्य

एकत्रीकरण फ़ंक्शन जैसे SUM, AVG, COUNT इत्यादि, NULL मानों को अलग तरीके से संभालते हैं। उदाहरण के लिए, SUM और AVG NULL मानों को अनदेखा करते हैं, जबकि COUNT स्पष्ट रूप से निर्दिष्ट होने पर उन्हें गिन सकता है।

SELECT SUM(salary) FROM employees;  -- NULL values are ignored
SELECT AVG(salary) FROM employees;  -- NULL values are ignored
SELECT COUNT(manager_id) FROM employees;  -- NULL values are ignored
SELECT COUNT(*) FROM employees WHERE manager_id IS NULL;  -- Counts only NULL values

जॉइन में NULL से निपटना

जुड़ते समय, NULL मान अप्रत्याशित परिणाम दे सकते हैं। उदाहरण के लिए, INNER JOIN में शामिल होने की स्थिति में NULL मान वाली पंक्तियाँ शामिल नहीं हैं, जबकि LEFT JOIN में वे शामिल हैं।

SELECT e.name, d.department_name
FROM employees e
LEFT JOIN departments d ON e.department_id = d.id;

यह क्वेरी लेफ्ट जॉइन के कारण बिना विभाग वाले कर्मचारियों सहित सभी कर्मचारियों को पुनः प्राप्त करती है।

SQL क्वेरीज़ में NULL को संभालना

COALESCE का उपयोग करना

COALESCE फ़ंक्शन अभिव्यक्तियों की सूची में पहला गैर-शून्य मान लौटाता है। यह NULL को डिफ़ॉल्ट मान से बदलने के लिए उपयोगी है।

SELECT name, COALESCE(manager_id, 'No Manager') AS manager_id
FROM employees;

यह क्वेरी NULL मैनेजर_आईडी मानों को 'नो मैनेजर' स्ट्रिंग से बदल देती है।

IFNULL या ISNULL का उपयोग करना

कई SQL बोलियाँ NULL मानों को संभालने के लिए IFNULL (MySQL) या ISNULL (SQL सर्वर) जैसे फ़ंक्शन प्रदान करती हैं।

-- MySQL
SELECT name, IFNULL(manager_id, 'No Manager') AS manager_id FROM employees;

-- SQL Server
SELECT name, ISNULL(manager_id, 'No Manager') AS manager_id FROM employees;

NULLIF का उपयोग करना

यदि दोनों तर्क बराबर हैं तो NULLIF फ़ंक्शन NULL लौटाता है; अन्यथा, यह पहला तर्क लौटाता है। यह शून्य त्रुटियों से विभाजन से बचने के लिए उपयोगी है।

SELECT price / NULLIF(quantity, 0) AS unit_price
FROM products;

यदि मात्रा शून्य है तो यह क्वेरी NULL लौटाकर शून्य से विभाजन को रोकती है।

शून्य हैंडलिंग के लिए सर्वोत्तम अभ्यास

  1. डिफ़ॉल्ट मान परिभाषित करें: तालिकाएँ बनाते समय, शून्य घटनाओं को कम करने के लिए कॉलम के लिए डिफ़ॉल्ट मान परिभाषित करें।
  2. उपयुक्त फ़ंक्शंस का उपयोग करें: NULL मानों को प्रभावी ढंग से संभालने के लिए COALESCE, IFNULL और NULLIF जैसे फ़ंक्शंस का उपयोग करें।
  3. डेटा मान्य करें: शून्य मानों को रोकने के लिए डेटा सत्यापन नियम लागू करें जहां वे वांछित नहीं हैं।
  4. डेटाबेस डिज़ाइन पर विचार करें: प्रश्नों और प्रदर्शन पर प्रभाव को ध्यान में रखते हुए, NULL मानों को उचित रूप से संभालने के लिए अपना डेटाबेस स्कीमा डिज़ाइन करें।

निष्कर्ष

SQL में NULL मानों को संभालने के लिए विभिन्न परिचालनों में उनके व्यवहार पर सावधानीपूर्वक विचार करने और समझने की आवश्यकता होती है। उचित SQL फ़ंक्शंस का उपयोग करके और सर्वोत्तम प्रथाओं का पालन करके, आप यह सुनिश्चित कर सकते हैं कि आपकी डेटाबेस क्वेरीज़ सटीक और विश्वसनीय परिणाम देती हैं। चाहे आप NULL की जाँच कर रहे हों, एकत्रीकरण कर रहे हों, या तालिकाओं में शामिल हो रहे हों, डेटा अखंडता बनाए रखने और अपने SQL संचालन में वांछित परिणाम प्राप्त करने के लिए उचित NULL हैंडलिंग महत्वपूर्ण है।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/ Kellyblaire/null-handling-in-sql-1mp2?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3