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

MySQL में उपयोगकर्ता-परिभाषित वेरिएबल में SELECT INTO करें

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;

  1. - MySQL में INSERT INTO SELECT और UNION के साथ एकाधिक इन्सर्ट कैसे करें?

    MySQL में एक ही स्टेटमेंट में एकाधिक पंक्तियाँ इन्सर्ट करने के लिए, INSERT INTO ... SELECT के साथ UNION ALL (या UNION) का उपयोग करें। यह अलग-अलग INSERT स्टेटमेंट से अधिक कुशल है। सिंटैक्स INSERT INTO table_name (col1, col2, col3) SELECT val1, val2, val3 UNION ALL SELECT val4, val5, val6 UNION ALL S

  1. - MySQL में IF स्टेटमेंट और यूजर-डिफाइंड वेरिएबल से कस्टम संदेश सेट करें

    SELECT INTO वेरिएबल और IF() से शर्ती संदेश उत्पन्न करें कुल योग की गणना करके उसे वेरिएबल में स्टोर करें, फिर IF() से कस्टम संदेश दिखाएं। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable2008 ( Value int ); Query OK, 0 rows affected (10.59 sec) mysql> insert into DemoTable2008 values(10);

  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