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

MySQL क्वेरी में COUNT के साथ CASE शर्त का उपयोग कैसे करें

COUNT() के अंदर CASE WHEN का उपयोग करके सशर्त गिनती

MySQL में इसके लिए CASE WHEN का उपयोग करें और COUNT() मेथड के अंदर CASE शर्त सेट करें। पहले टेबल बनाएं:

mysql> create table DemoTable1374 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20), Score int ); Query OK, 0 rows affected (0.61 sec)

रिकॉर्ड डालें:

mysql> insert into DemoTable1374(Name,Score) values('Chris',45); Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable1374(Name,Score) values('David',78); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1374(Name,Score) values('Bob',45); Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable1374(Name,Score) values('Mike',75); Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1374(Name,Score) values('Carol',45); Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1374(Name,Score) values('Adam',89); Query OK, 1 row affected (0.18 sec)

सभी रिकॉर्ड देखें:

mysql> select * from DemoTable1374;

आउटपुट:

+----+-------+-------+ | Id | Name  | Score | +----+-------+-------+ | 1  | Chris | 45    | | 2  | David | 78    | | 3  | Bob   | 45    | | 4  | Mike  | 75    | | 5  | Carol | 45    | | 6  | Adam  | 89    | +----+-------+-------+ 6 rows in set (0.00 sec)

CASE WHEN से शर्त सेट करके गिनती करने की क्वेरी:

mysql> select count(case when Score=45 then 1 else NULL end) as SpecificCondition from DemoTable1374;

परिणाम:

+-------------------+ | SpecificCondition | +-------------------+ | 3                 | +-------------------+ 1 row in set (0.00 sec)

व्याख्या: COUNT() केवल NULL मानों को नहीं गिनता। CASE WHEN Score=45 THEN 1 ELSE NULL END: जब स्कोर 45 हो तो 1 लौटाता है (गिना जाता है), अन्यथा NULL (नहीं गिना जाता)। इस प्रकार केवल स्कोर 45 वाली पंक्तियां गिनी जाती हैं (3 पंक्तियां)। आप SUM(CASE WHEN Score=45 THEN 1 ELSE 0 END) का भी उपयोग कर सकते हैं।

  1. Java में MySQL के लिए PreparedStatement का उपयोग करके SELECT क्वेरी कैसे चलाएं? Java में MySQL के लिए PreparedStatement का उपयोग करके SELECT क्वेरी कैसे चलाएं?

    Java में PreparedStatement से SELECT क्वेरी निष्पादित करना SELECT क्वेरी के लिए executeQuery() मेथड का उपयोग किया जाता है। सिंटैक्स PreparedStatement pstmt = connection.prepareStatement(query); ResultSet rs = pstmt.executeQuery(); उदाहरण: डेटाबेस में टेबल बनाएं ); डेटा डालें: insert into JavaP

  1. - MySQL में LIKE क्वेरी से % चिह्न वाले कॉलम मान खोजना

    ESCAPE करके % को शाब्दिक मिलान करना LIKE में % वाइल्डकार्ड है। इसे शाब्दिक % वर्ण के रूप में खोजने के लिए बैकस्लैश \ से एस्केप करें: \\%। तालिका और डेटा (%JohnSmith), (DavidMiller), (CarolTaylor%), (%DavidMiller); क्वेरी: % से शुरू होने वाले नाम SELECT * FROM DemoTable1497 WHERE Name LIKE \\%;

  1. - MySQL में CURDATE के साथ CONTAINS() का उपयोग कैसे करें? (CONCAT + LIKE का उपयोग करें)

    MySQL में CONTAINS() नहीं है - CONCAT() और LIKE का उपयोग करें MySQL में CONTAINS() फ़ंक्शन नहीं है (यह SQL Server/Full-text खोज में मौजूद है)। स्ट्रिंग में उपस्ट्रिंग खोजने के लिए, LIKE ऑपरेटर के साथ CONCAT() का उपयोग करके डायनामिक पैटर्न बनाएं। वर्तमान तिथि जांचना SELECT CURDATE(); +------------+