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

MySQL में CASE स्टेटमेंट से प्रत्येक SELECT फील्ड के लिए शर्ती WHERE

CASE एक्सप्रेशन से कॉलम-विशिष्ट शर्ती एग्रीगेशन

WHERE क्लॉज के बजाय CASE स्टेटमेंट का उपयोग करके प्रत्येक चयनित फील्ड के लिए अलग-अलग शर्तें लागू करें।

टेबल बनाएं और डेटा डालें:

mysql> create table DemoTable1988 ( Value1 int, Value2 int, Price int ); Query OK, 0 rows affected (0.64 sec)
mysql> insert into DemoTable1988 values(10,7,500); ...

क्वेरी: Value2=7 वाले Price का योग घटाएं Value1=7 वाले Price का योग:

mysql> select sum( case when Value2=7 then Price else 0 end) - sum( case when Value1=7 then Price else 0 end) as Result from DemoTable1988;

आउटपुट:

+--------+ | Result | +--------+ |      0 | +--------+ 1 row in set (0.23 sec)

व्याख्या: CASE WHEN शर्त पूरी होने पर Price जोड़ता है, अन्यथा 0। यह पंक्ति-स्तरीय शर्ती एग्रीगेशन की अनुमति देता है।

  1. - क्या हम MySQL SELECT IN() में एकल मान सेट कर सकते हैं?

    हाँ, हम MySQL में IN() के साथ एकल मान सेट कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.65 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(Chris)

  1. - MySQL SELECT परिणाम को कस्टम वेरिएबल में कैसे स्टोर करें

    उदाहरण टेबल बनाएं: INSERT INTO DemoTable2013 VALUES (Chris), (David), (Mike), (Sam), (Bob); वेरिएबल में काउंट स्टोर करें SET @query := (SELECT COUNT(*) FROM DemoTable2013); वेरिएबल का उपयोग करके अंतिम रिकॉर्ड प्राप्त करें WHERE (@query := @query - 1) = 0; परिणाम +------+ | Name | +------+ | Bo

  1. - MySQL में WHERE IN के साथ NULL मान कैसे संभालें?

    सिंटैक्स select yourColumnName1, yourColumnName2 from yourTableName where yourValue in(yourColumnName1, yourColumnName2) or yourColumnName1 is NULL; उदाहरण insert into demo60(first_name,last_name) values(John,Smith), (John,Doe), (null,Brown), (David,Miller), (David,Smith), (Chris,Brown); क्वेरी