MySQL में SELECT के साथ इन्क्रीमेंट काउंटर करने के लिए, पहले आपको एक वेरिएबल घोषित और इनिशियलाइज़ करने की आवश्यकता है। सिंटैक्स इस प्रकार है:
SET @anyVariableName = 0; SELECT yourColumnName, @anyVariableName := @anyVariableName + 1 AS anyVariableName FROM yourTableName;
उपरोक्त सिंटैक्स को समझने और इन्क्रीमेंट काउंटर सेट करने के लिए, पहले एक टेबल बनाते हैं। टेबल बनाने का क्वेरी:
mysql> CREATE TABLE incrementCounterDemo (
-> Name VARCHAR(100)
-> ); Query OK, 0 rows affected (1.01 sec)
INSERT कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है:
mysql> INSERT INTO incrementCounterDemo VALUES('John'); Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO incrementCounterDemo VALUES('Carol'); Query OK, 1 row affected (0.20 sec)
mysql> INSERT INTO incrementCounterDemo VALUES('David'); Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO incrementCounterDemo VALUES('Mike'); Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO incrementCounterDemo VALUES('Bob'); Query OK, 1 row affected (0.12 sec)
mysql> INSERT INTO incrementCounterDemo VALUES('Sam'); Query OK, 1 row affected (0.16 sec)
SELECT स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है:
mysql> SELECT * FROM incrementCounterDemo;
निम्न आउटपुट है।
+-------+ | Name | +-------+ | John | | Carol | | David | | Mike | | Bob | | Sam | +-------+ 6 rows in set (0.00 sec)
वेरिएबल सेट करें
mysql> SET @counter = 0; Query OK, 0 rows affected (0.00 sec)
अब इन्क्रीमेंट काउंटर चुनें।
mysql> SELECT Name,
-> @counter := @counter + 1 AS IncrementingValueByOne
-> FROM incrementCounterDemo;
निम्न आउटपुट है।
+-------+------------------------+ | Name | IncrementingValueByOne | +-------+------------------------+ | John | 1 | | Carol | 2 | | David | 3 | | Mike | 4 | | Bob | 5 | | Sam | 6 | +-------+------------------------+ 6 rows in set (0.00 sec)