Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में सीक्वेंस कैसे बनाएं

कभी-कभी आपको MySQL में अनुक्रम उत्पन्न करने की आवश्यकता हो सकती है। चूंकि MySQL में अनुक्रम बनाने के लिए एक अंतर्निहित फ़ंक्शन नहीं है, इसलिए आपको इसे SQL क्वेरी के माध्यम से उत्पन्न करने की आवश्यकता है। MySQL अनुक्रम क्वेरी का उपयोग करके MySQL में अनुक्रम बनाने का तरीका यहां दिया गया है।

MySQL में सीक्वेंस कैसे बनाएं

यहाँ MySQL में अनुक्रम बनाने के चरण दिए गए हैं। MySQL में सीक्वेंस जेनरेट करने के कई तरीके हैं।

AUTO_INCREMENT का उपयोग करके अनुक्रम बनाएं

आप तालिका निर्माण के दौरान AUTO_INCREMENT विशेषता का उपयोग करके बस अपने MySQL अनुक्रम को एक कॉलम में संग्रहीत कर सकते हैं। मान लें कि आप तालिका बनाना चाहते हैं आदेश(आईडी, आदेश_तिथि, राशि) और क्रम को id . में स्टोर करें कॉलम।

mysql> create table orders(id int AUTO_INCREMENT PRIMARY KEY, 
        order_date date, amount int);

mysql> insert into orders(order_date,  amount)
      values('2020-08-01', 250),
       ('2020-08-02',125),
       ('2020-08-03',300);

mysql> select * from orders;
+----+------------+--------+
| id | order_date | amount |
+----+------------+--------+
|  1 | 2020-08-01 |    250 |
|  2 | 2020-08-02 |    125 |
|  3 | 2020-08-03 |    300 |
+----+------------+--------+

उपरोक्त तालिका में, हम id . को परिभाषित करते हैं कॉलम को हमारी प्राथमिक कुंजी के रूप में शामिल करें और इसमें प्राथमिक कुंजी मानों को स्वचालित रूप से बढ़ाने और संग्रहीत करने के लिए AUTO_INCREMENT विकल्प शामिल करें।

कृपया ध्यान दें, MySQL आपको प्रति टेबल केवल एक AUTO_INCREMENT कॉलम रखने की अनुमति देता है और वह भी प्राथमिक कुंजी के रूप में।

उपरोक्त INSERT क्वेरी में, हम केवल order_date . के लिए मान प्रदान करते हैं और राशि कॉलम लेकिन नहीं आईडी कॉलम लेकिन MySQL स्वचालित रूप से इसके लिए अनुक्रम उत्पन्न करता है।

बोनस पढ़ें :MySQL में दो तालिकाओं की तुलना कैसे करें

AUTO_INCREMENT का उपयोग किए बिना अनुक्रम बनाएं

मान लें कि आप AUTO_INCREMENT का उपयोग किए बिना एक और अनुक्रम कॉलम बनाना चाहते हैं। उस स्थिति में, आपको इस अनुक्रम कॉलम को गणितीय रूप से गणना और पॉप्युलेट करने के लिए अद्यतन विवरण का उपयोग करने की आवश्यकता होगी।

उदाहरण के लिए, आइए हम एक अनुक्रम जोड़ें एक नया क्रम संगृहीत करने के लिए ऊपर तालिका में स्तंभ।

mysql> alter table orders 
add column sequence int;

बोनस पढ़ें :MySQL में टेबल कॉपी कैसे करें

इसके बाद, हम MySQL में सीक्वेंस बनाने के लिए UPDATE स्टेटमेंट का उपयोग करते हैं। हम एक ऐसा क्रम बनाएंगे जो id . से दोगुना हो स्तंभ मान

mysql> update orders
       set sequence=2*id;

mysql> select * from orders;
+----+------------+--------+----------+
| id | order_date | amount | sequence |
+----+------------+--------+----------+
|  1 | 2020-08-01 |    250 |        2 |
|  2 | 2020-08-02 |    125 |        4 |
|  3 | 2020-08-03 |    300 |        6 |
+----+------------+--------+----------+

बोनस पढ़ें :MySQL में पिछले एक महीने का डेटा कैसे प्राप्त करें

हम UPDATE स्टेटमेंट में इस्तेमाल किए गए फॉर्मूले को अपडेट करके एक नॉन-लीनियर सीक्वेंस भी बना सकते हैं। id . के वर्ग मानों (y x y) का अनुक्रम उत्पन्न करने के लिए यहां SQL क्वेरी है कॉलम

mysql> update orders
      set sequence=id*id;

mysql> select * from orders;
+----+------------+--------+----------+
| id | order_date | amount | sequence |
+----+------------+--------+----------+
|  1 | 2020-08-01 |    250 |        1 |
|  2 | 2020-08-02 |    125 |        4 |
|  3 | 2020-08-03 |    300 |        9 |
+----+------------+--------+----------+

Ubiq मिनटों में डेटा को विज़ुअलाइज़ करना और रीयल-टाइम डैशबोर्ड में मॉनिटर करना आसान बनाता है। इसे आज ही आजमाएं!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक स्ट्रिंग से बचने का क्या मतलब है?

  2. Ansible . का उपयोग करके स्टैंडअलोन MySQL से गैलेरा क्लस्टर में माइग्रेशन को स्वचालित कैसे करें

  3. अनुक्रम संख्या mysql के साथ कॉलम अपडेट करना

  4. Ubuntu 20.04 पर MySQL को इंस्टाल करना और कॉन्फ़िगर करना

  5. Moodle के लिए MySQL की निगरानी के लिए युक्तियाँ