Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में CASE WHEN क्लॉज में एक्सप्रेशन सही काम नहीं कर रहा?


सही CASE WHEN सिंटैक्स

select 
  (case 
    when (first_name = "John") then 'Carol'
    when (last_name = "Smith") then 'Doe'
  end) RESULT
from demo58;

उदाहरण डेटा

mysql> create table demo58 (id int not null auto_increment primary key, first_name varchar(20), last_name varchar(20));
mysql> insert into demo58(first_name,last_name) values('John','Doe'), ('David','Smith'), ('John','Brown'), ('David','Miller');

परिणाम

+--------+
| RESULT |
+--------+
| Carol  |  (first_name = John)
| Doe    |  (last_name = Smith)
| Carol  |  (first_name = John)
| NULL   |  (कोई शर्त मेल नहीं)
+--------+

नियम: पहली TRUE शर्त का परिणाम लौटाया जाता है; ELSE न होने पर NULL मिलता है।


  1. - MySQL में CASE WHEN के साथ काउंट कैसे करें?

    MySQL में शर्ती गिनती (कंडीशनल काउंट) करने के लिए SUM(CASE WHEN ... THEN 1 ELSE 0 END) पैटर्न का उपयोग करें। यह एक ही क्वेरी में एकाधिक शर्तों की गिनती करने का कुशल तरीका है। उदाहरण: विशिष्ट मार्क्स की गिनती प्रति छात्र डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable1910 ( FirstName VARCHAR

  1. - MySQL क्वेरी में दो बार LIKE क्लॉज का उपयोग

    OR ऑपरेटर से एकाधिक LIKE शर्तें जोड़ें एक कॉलम पर दो अलग-अलग पैटर्न से फ़िल्टर करने के लिए OR के साथ दो LIKE क्लॉज का उपयोग करें। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable2009 ( Name varchar(20) ); Query OK, 0 rows affected (0.51 sec) mysql> insert into DemoTable2009 values(John

  1. - MySQL में CASE WHEN क्लॉज में एक्सप्रेशन सही काम नहीं कर रहा?

    सही CASE WHEN सिंटैक्स select (case when (first_name = John) then Carol when (last_name = Smith) then Doe end) RESULT from demo58; उदाहरण डेटा insert into demo58(first_name,last_name) values(John,Doe), (David,Smith), (John,Brown), (David,Miller); परिणाम +--------+ | RESULT | +-----