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

MySQL में सबक्वेरी को सही तरीके से पैरेंथेसिस में कैसे बंद करें?


MySQL में सबक्वेरी को पैरेंथेसिस में सही ढंग से बंद करना

MySQL में सबक्वेरी को हमेशा पैरेंथेसिस ( ) में बंद करना आवश्यक है।

सिंटैक्स

SELECT IF((SELECT COUNT(*) FROM yourTableName), 'Yes', 'No') AS anyAliasName;

उदाहरण

टेबल बनाएं:

mysql> create table SelectIfDemo (
    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name varchar(10)
    -> );

डेटा डालें:

mysql> insert into SelectIfDemo(Name) values('John');
mysql> insert into SelectIfDemo(Name) values('Carol');
mysql> insert into SelectIfDemo(Name) values('Larry');
mysql> insert into SelectIfDemo(Name) values('Bob');
mysql> insert into SelectIfDemo(Name) values('Sam');

सबक्वेरी के साथ IF स्टेटमेंट:

mysql> select if((select count(*) from SelectIfDemo), 'Yes', 'No') as Result;

परिणाम:

+--------+
| Result |
+--------+
| Yes    |
+--------+

सामान्य गलतियाँ

-- गलत: पैरेंथेसिस गायब
SELECT IF(SELECT COUNT(*) FROM table, 'Yes', 'No');

-- सही: सबक्वेरी पैरेंथेसिस में
SELECT IF((SELECT COUNT(*) FROM table), 'Yes', 'No');

सबक्वेरी के प्रकार

  • स्केलर सबक्वेरी: एक मान लौटाती है (उपरोक्त उदाहरण)
  • पंक्ति सबक्वेरी: एक पंक्ति लौटाती है
  • तालिका सबक्वेरी: एकाधिक पंक्तियाँ लौटाती है (IN, EXISTS, ANY/ALL के साथ उपयोग)

बेस्ट प्रैक्टिस

  • हमेशा सबक्वेरी को पैरेंथेसिस में बंद करें
  • जटिल सबक्वेरी के लिए CTE (WITH क्लॉज) का उपयोग करें (MySQL 8.0+)
  • सबक्वेरी के बजाय JOIN अक्सर बेहतर प्रदर्शन देता है
  1. - MySQL में UPDATE से प्रत्येक पंक्ति में मान कैसे जोड़ें?

    MySQL में UPDATE कमांड का उपयोग करके टेबल की **सभी पंक्तियों** में एक मान जोड़ सकते हैं - चाहे पूर्णांक कॉलम हो या दिनांक कॉलम। सिंटैक्स पूर्णांक कॉलम के लिए UPDATE yourTableName SET integerColumn = integerColumn + value; दिनांक कॉलम के लिए UPDATE yourTableName SET dateColumn = DATE_ADD(dateColum

  1. - MySQL में किसी टाइप को BigInt में कैसे कास्ट करें?

    CAST और CONV के साथ BigInt कन्वर्जन हेक्साडेसिमल स्ट्रिंग को BIGINT (64-बिट अनसाइन्ड) में कन्वर्ट करने के लिए: SELECT CAST(CONV(yourColumnName, 16, 10) AS UNSIGNED INTEGER) AS alias FROM yourTableName; यह आर्टिकल 1005073077 के समान है - हेक्साडेसिमल (बेस 16) से डेसिमल (बेस 10) कन्वर्जन। उदाहरण: ट

  1. - MySQL में SOUNDEX() फ़ंक्शन का उपयोग कैसे करें?

    MySQL में SOUNDEX() फ़ंक्शन समान उच्चारण वाले शब्दों को खोजने के लिए साउंडेक्स कोड लौटाता है। सिंटैक्स SELECT * FROM yourTableName WHERE SOUNDEX(yourValue) = SOUNDEX(yourColumnName); टेबल निर्माण mysql> CREATE TABLE DemoTable ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName VARC