यदि दूसरा फ़ील्ड स्ट्रिंग रखता है तो TRUE या FALSE लौटाने के लिए IF() का उपयोग करें। आइए पहले एक टेबल बनाते हैं:
mysql> create table DemoTable (
FirstName varchar(100),
LastName varchar(100) );
Query OK, 0 rows affected (1.28 sec)
इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:
mysql> insert into DemoTable values('Chris','Brown');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable values('David','Miller');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('Adam','Smith');
Query OK, 1 row affected (0.11 sec)
सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:
mysql> select * from DemoTable;
यह निम्नलिखिक आउटपुट देगा:
+-----------+----------+ | FirstName | LastName | +-----------+----------+ | Chris | Brown | | David | Miller | | Adam | Smith | +-----------+----------+ 3 rows in set (0.00 sec)
MySQL SELECT में TRUE/FALSE लौटाने की क्वेरी (स्ट्रिंग "Miller" की जांच)
mysql> select if(LastName='Miller','Yes','No') AS LastName, FirstName from DemoTable;
यह निम्नलिखिक आउटपुट देगा:
+----------+-----------+ | LastName | FirstName | +----------+----------+ | No | Chris | | Yes | David | | No | Adam | +----------+----------+ 3 rows in set (0.00 sec)
व्याख्या
IF(condition, true_value, false_value)शर्त के आधार पर मान लौटाता हैLastName='Miller'जांचता है कि क्या अंतिम नाम 'Miller' है- सच तो 'Yes', झूठ तो 'No' लौटाता है
- कॉलम उपनाम
AS LastNameपरिणाम कॉलम का नाम बदलता है
बूलियन परिणाम के लिए
SELECT IF(LastName='Miller', TRUE, FALSE) AS HasMiller, FirstName FROM DemoTable;
यह 1 (TRUE) या 0 (FALSE) लौटाएगा।
CASE विकल्प
SELECT CASE WHEN LastName='Miller' THEN 'Yes' ELSE 'No' END AS HasMiller, FirstName FROM DemoTable;