← Back to PostgreSQL Course | Chapter 3: Data Types | Lesson 6 of 7

NULL को Handle करना

NULL का मतलब है "unknown या missing", और यह zero या empty text से अलग behave करता है।

In this page:

  1. NULL Handling
Syntax
sql
WHERE column IS NULL
WHERE column IS NOT NULL
SELECT COALESCE(column, default_value)

NULL Handling

NULL के साथ कोई भी arithmetic या comparison NULL देता है, इसलिए इसे test करने के लिए IS NULL और IS NOT NULL इस्तेमाल करें। COALESCE(a, b, ...) पहली non-null value return करता है, NULLIF(a, b) values equal होने पर NULL return करता है, और COUNT(column) जैसे aggregates NULLs skip करते हैं जबकि COUNT(*) नहीं करता।

Note: COUNT(column) NULLs ignore करता है लेकिन COUNT(*) हर row count करता है।

उदाहरण: NULL handling

sql
CREATE TABLE contacts (id INTEGER PRIMARY KEY, name TEXT, phone TEXT, age INTEGER);
INSERT INTO contacts VALUES (1, 'Ada', '555-1', 36), (2, 'Bob', NULL, NULL), (3, 'Cy', NULL, 41);
SELECT name FROM contacts WHERE phone IS NULL;
SELECT name, COALESCE(phone, 'no phone') AS phone FROM contacts;
SELECT COUNT(*) AS rows, COUNT(phone) AS phones, AVG(age) AS avg_age FROM contacts;
SELECT name, age + 1 AS next_year FROM contacts;

-- Output:
-- name
-- Bob
-- Cy
-- name | phone
-- Ada | 555-1
-- Bob | no phone
-- Cy | no phone
-- rows | phones | avg_age
-- 3 | 1 | 38.5
-- name | next_year
-- Ada | 37
-- Bob | NULL
-- Cy | 42
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. = NULL इस्तेमाल करना
  2. यह उम्मीद करना कि NULL + 1 1 होगा
  3. यह भूल जाना कि NULLs के साथ NOT IN कुछ भी return नहीं करता
चैप्टर सारांश
  • NULL का मतलब unknown है
  • NULL के साथ comparisons NULL हैं
  • COALESCE defaults substitute करता है
  • COUNT(column) NULL skip करता है
🔒

Chapter Quiz — Complete all 7 topics to unlock

0/7 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.