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

MySQL में यूज़र-डिफ़ाइन्ड वेरिएबल (@var) से क्वेरी परिणाम असाइन करें

MySQL में @variable_name सिंटैक्स से यूज़र-डिफ़ाइन्ड वेरिएबल बनाकर SELECT ... INTO @var या असाइनमेंट ऑपरेटर := से क्वेरी परिणाम संग्रहीत कर सकते हैं।

टेबल बनाएं

mysql> CREATE TABLE DemoTable1864 (
    Id INT,
    FirstName VARCHAR(20),
    LastName VARCHAR(20)
);

डेटा डालें

mysql> INSERT INTO DemoTable1864 VALUES(101, 'Chris', 'Brown');
mysql> INSERT INTO DemoTable1864 VALUES(102, 'David', 'Miller');
mysql> INSERT INTO DemoTable1864 VALUES(103, 'Adam', 'Smith');
mysql> INSERT INTO DemoTable1864 VALUES(104, 'John', 'Doe');

वेरिएबल में असाइन करें (:= ऑपरेटर)

mysql> SELECT @fName := FirstName, @lName := LastName
    FROM DemoTable1864
    WHERE Id = 103;

आउटपुट:

+-------------------+------------------+
| @fName := FirstName | @lName := LastName |
+-------------------+------------------+
| Adam              | Smith            |
+-------------------+------------------+

वेरिएबल उपयोग करें

mysql> SELECT @fName, @lName;
+--------+--------+
| @fName | @lName |
+--------+--------+
| Adam   | Smith  |
+--------+--------+

विकल्प: SELECT INTO (केवल एकल पंक्ति)

SELECT FirstName, LastName INTO @fName, @lName
FROM DemoTable1864 WHERE Id = 103;

महत्वपूर्ण अंतर

पहलू:= (SELECT सूची में)INTO
एकाधिक पंक्तियाँअंतिम पंक्ति का मान रहता हैत्रुटि (एक से अधिक पंक्ति नहीं)
उपयोग स्थानSELECT सूची, WHERE, ORDER BYकेवल SELECT ... INTO
स्कोपसत्र (कनेक्शन)सत्र

सावधानियां

  • वेरिएबल नाम केस-इनसेंसिटिव: @name = @Name।
  • सत्र समाप्त होने पर वेरिएबल खो जाते हैं।
  • स्टोर्ड प्रोसीजर में DECLARE (स्थानीय वेरिएबल) अलग है; @ सत्र वेरिएबल है।
  1. - MySQL में SELECT INTO का समकक्ष (CREATE TABLE AS SELECT)

    MySQL में SELECT INTO के बजाय CREATE TABLE AS SELECT उपयोग करें MySQL, SQL Server के SELECT INTO सिंटैक्स का समर्थन नहीं करता। इसके बजाय CREATE TABLE ... AS SELECT (CTAS) का उपयोग करें। सिंटैक्स CREATE TABLE new_table_name AS SELECT * FROM existing_table_name; उदाहरण CREATE TABLE selectIntoEquival

  1. - MySQL में संख्यात्मक क्वेरी परिणाम को कैसे विभाजित करें?

    संख्यात्मक क्वेरी परिणाम को विभाजित करने के लिए, आप MySQL में CONCAT() फ़ंक्शन का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: CREATE TABLE DemoTable ( StudentId INT ); अब टेबल में कुछ रिकॉर्ड डालें: INSERT INTO DemoTable VALUES(8905); टेबल से सभी रिकॉर्ड प्रदर्शित करें: SELECT * FROM DemoT

  1. - MySQL में SELECT क्वेरी परिणाम को क्रमबद्ध करना (ORDER BY)

    टेबल से डेटा चुनते समय पंक्तियाँ टेबल में मौजूद क्रम में आती हैं। विशिष्ट क्रम में प्राप्त करने के लिए ORDER BY उपयोग करें। सिंटैक्स आरोही क्रम (डिफ़ॉल्ट): SELECT * FROM table_name ORDER BY column_name अवरोही क्रम: SELECT * FROM table_name ORDER BY column_name DESC Python में MySQL से क्रमबद्ध डेट