SELECT ... INTO @variable से क्वेरी परिणाम को वेरिएबल में संग्रहीत करना
MySQL में एक क्वेरी के परिणाम (एकल मान) को उपयोगकर्ता-परिभाषित वेरिएबल (@var_name) में संग्रहीत करने के लिए SELECT column INTO @variable FROM table WHERE condition सिंटैक्स का उपयोग करें।
सिंटैक्स
SELECT yourColumnName INTO @anyVariableName FROM yourTableName WHERE yourCondition;
टेबल और डेटा
mysql> CREATE TABLE DemoTable (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(100)
);
Query OK, 0 rows affected (0.73 sec)
mysql> INSERT INTO DemoTable(Name) VALUES('Chris');
Query OK, 1 row affected (0.20 sec)
mysql> INSERT INTO DemoTable(Name) VALUES('Robert');
Query OK, 1 row affected (0.11 sec)
mysql> INSERT INTO DemoTable(Name) VALUES('David');
Query OK, 1 row affected (0.10 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+----+--------+ | Id | Name | +----+--------+ | 1 | Chris | | 2 | Robert | | 3 | David | +----+--------+ 3 rows in set (0.00 sec)
Id=3 वाले नाम को वेरिएबल में संग्रहीत करना
mysql> SELECT Name INTO @FirstName FROM DemoTable WHERE Id = 3; Query OK, 1 row affected (0.02 sec)
वेरिएबल का मान जांचना
mysql> SELECT @FirstName;
+------------+ | @FirstName | +------------+ | David | +------------+ 1 row in set (0.00 sec)
महत्वपूर्ण नियम:
- क्वेरी को ठीक एक पंक्ति लौटानी चाहिए (0 या एकाधिक पंक्तियों पर त्रुटि)
- वेरिएबल नाम
@से शुरू होना चाहिए - वेरिएबल सत्र-विशिष्ट होता है (कनेक्शन बंद होने पर खो जाता है)
- बाद में अन्य क्वेरी में
@FirstNameउपयोग कर सकते हैं
एकाधिक कॉलम: SELECT Id, Name INTO @id, @name FROM DemoTable WHERE Id=3;