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

MySQL में IF स्टेटमेंट के परिणाम के रूप में स्ट्रिंग कैसे लौटाएं

IF() फंक्शन के साथ कंडीशनल स्ट्रिंग परिणाम

MySQL में IF() फंक्शन का उपयोग करके शर्त के आधार पर अलग-अलग स्ट्रिंग मान लौटाएं।

आइए पहले एक टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    EmployeeSalary INT
);

रिकॉर्ड्स इन्सर्ट करें:

mysql> INSERT INTO DemoTable (EmployeeSalary) VALUES (12000);
mysql> INSERT INTO DemoTable (EmployeeSalary) VALUES (20000);
mysql> INSERT INTO DemoTable (EmployeeSalary) VALUES (11500);
mysql> INSERT INTO DemoTable (EmployeeSalary) VALUES (15500);

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

mysql> SELECT * FROM DemoTable;

आउटपुट:

+----+----------------+
| Id | EmployeeSalary |
+----+----------------+
| 1  | 12000          |
| 2  | 20000          |
| 3  | 11500          |
| 4  | 15500          |
+----+----------------+

सैलरी के आधार पर कर्मचारी प्रकार (इंटर्नशिप/फुलटाइम) निर्धारित करने के लिए क्वेरी:

mysql> SELECT Id,
    IF(EmployeeSalary <= 12000, 'Internship Employee', 'FullTime Employee') AS status
    FROM DemoTable;

आउटपुट:

+----+---------------------+
| Id | status              |
+----+---------------------+
| 1  | Internship Employee |
| 2  | FullTime Employee   |
| 3  | Internship Employee |
| 4  | FullTime Employee   |
+----+---------------------+

व्याख्या:

  • IF(condition, true_value, false_value): शर्त सत्य होने पर true_value, असत्य होने पर false_value लौटाता है
  • EmployeeSalary <= 12000 - 12000 या उससे कम सैलरी वाले इंटर्नशिप कर्मचारी हैं
  • Id 1 (12000) और Id 3 (11500) → "Internship Employee"
  • Id 2 (20000) और Id 4 (15500) → "FullTime Employee"

IF vs CASE:

-- IF: सरल दो-तरफा शर्त के लिए
IF(salary <= 12000, 'Intern', 'FullTime')

-- CASE: बहु-तरफा शर्तों के लिए
CASE
    WHEN salary <= 10000 THEN 'Trainee'
    WHEN salary <= 20000 THEN 'Junior'
    WHEN salary <= 50000 THEN 'Senior'
    ELSE 'Lead'
END

नोट: IF() एक फंक्शन है (एक्सप्रेशन में उपयोग होता है), जबकि IF स्टेटमेंट (फ्लो कंट्रोल) केवल स्टोर्ड प्रोसीजर्स में उपयोग होता है।

  1. - MySQL में ORDER BY FIELD() से IN() सूची के क्रम में परिणाम लौटाना

    MySQL में IN() क्लॉज़ में मानों के क्रम में ही परिणाम लौटाने के लिए ORDER BY FIELD() फ़ंक्शन का उपयोग किया जाता है। यह कस्टम सॉर्टिंग के लिए बहुत उपयोगी है। उदाहरण के लिए टेबल बनाना mysql> CREATE TABLE DemoTable (Number INT); डेटा डालना mysql> INSERT INTO DemoTable VALUES(19), (30), (34), (2

  1. - MySQL में डिलीमीटर के बाद का सबस्ट्रिंग लौटाने की क्वेरी

    डिलीमीटर के बाद के मान लौटाने के लिए SUBSTRING() का उपयोग करें। उदाहरण टेबल बनाएं: mysql> create table DemoTable ( -> Title text -> ); Query OK, 0 rows affected (0.56 sec) रिकॉर्ड डालें: mysql> insert into DemoTable values(John is good in MySQL,Sam is good in MongoDB,Mike is go

  1. - MySQL में LIKE और CONCAT का उपयोग करके जांचें कि स्ट्रिंग में कोई शब्द है या नहीं

    MySQL में LIKE और CONCAT(): कॉलम मान के आधार पर पैटर्न मिलान LIKE ऑपरेटर के साथ CONCAT() फंक्शन का उपयोग करके आप डायनामिक पैटर्न बना सकते हैं। यह तब उपयोगी है जब खोज पैटर्न किसी कॉलम मान से आता है। उदाहरण: कॉलम मान Relational वाले शब्द को खोजें टेबल बनाएं: CREATE TABLE DemoTable (Value TEXT); INSER