CASE WHEN का उपयोग
CASE WHEN एक query के अंदर if/else logic add करता है।
In this page:
Syntax
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE default_result
END
FROM table_name;
CASE WHEN
CASE WHEN condition THEN result ... ELSE default END order में conditions evaluate करता है और पहला matching result return करता है। यह SELECT, WHERE, ORDER BY, और aggregates के अंदर appear हो सकता है।
Simple form CASE column WHEN value THEN ... एक column को values के against compare करता है।
Note:
एक ELSE branch add करें, नहीं तो unmatched rows NULL return करती हैं।
उदाहरण: CASE WHEN
CREATE TABLE marks (id INTEGER PRIMARY KEY, name TEXT, score INTEGER);
INSERT INTO marks VALUES (1, 'Ada', 92), (2, 'Bob', 74), (3, 'Cy', 55), (4, 'Di', 38);
SELECT name, score,
CASE WHEN score >= 90 THEN 'A' WHEN score >= 70 THEN 'B' WHEN score >= 50 THEN 'C' ELSE 'F' END AS grade
FROM marks ORDER BY id;
SELECT SUM(CASE WHEN score >= 50 THEN 1 ELSE 0 END) AS passed FROM marks;
-- Output:
-- name | score | grade
-- Ada | 92 | A
-- Bob | 74 | B
-- Cy | 55 | C
-- Di | 38 | F
-- passed
-- 3
Login to try C/C++/Java/PHP code in the editor
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. #}
आम गलतियां
- END भूल जाना
- ELSE omit करना और NULL पाना
- गलत order में overlapping conditions
चैप्टर सारांश
- CASE WHEN ... THEN ... ELSE ... END syntax इस्तेमाल होता है
- Conditions order में check होती हैं
- कोई ELSE नहीं मतलब NULL return होता है
- SELECT, ORDER BY, और aggregates में इस्तेमाल योग्य
🔒
Chapter Quiz — Complete all 7 topics to unlock
0/7 topics done
Complete these topics first: