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

MySQL में ROW_NUMBER () क्या है?

<घंटा/>

Row_NUMBER() MySQL संस्करण 8.0 से शामिल है। यह एक प्रकार का विंडो फंक्शन है। इसका उपयोग पंक्तियों के लिए अनुक्रम संख्या निर्दिष्ट करने के लिए किया जा सकता है। समझने के लिए CREATE pcommand की मदद से एक टेबल बनाएं -

टेबल बनाना

mysql> तालिका पंक्ति बनाएंNumberDemo-> (-> FirstName varchar(100)-> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.92 सेकंड)

रिकॉर्ड सम्मिलित करना

mysql> INSERT in rowNumberDemo value('john');query OK, 1 row प्रभावित (0.17 sec)mysql> INSERT in rowNumberDemo value('john');query OK, 1 row प्रभावित (0.29 sec)mysql> INSERT पंक्ति संख्या डेमो मानों ('बॉब') में; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> पंक्ति संख्या डेमो मान ('स्मिथ') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) 

हम सभी रिकॉर्ड्स को सेलेक्ट स्टेटमेंट की मदद से प्रदर्शित कर सकते हैं -

mysql> rowNumberDemo से * चुनें;

निम्न आउटपुट है -

<पूर्व>+-----------+| प्रथम नाम |+-----------+| जॉन || जॉन || बॉब || स्मिथ |+-----------+4 पंक्तियाँ सेट में (0.00 सेकंड)

अब, हम प्रत्येक रिकॉर्ड के लिए वृद्धिशील मान निर्दिष्ट करने के लिए row_number() का उपयोग कर सकते हैं -

mysql> सेलेक्ट row_number() ओवर (फर्स्टनाम द्वारा ऑर्डर) RowNumberSqeuence, FirstName RowNumberDemo से-> FirstName द्वारा ऑर्डर;

निम्न आउटपुट है -

<पूर्व>+---------------------+---------------+| RowNumberSqueuence | प्रथम नाम |+---------------------+-----------+| 1 | बॉब || 2 | जॉन || 3 | जॉन || 4 | स्मिथ |+-------------------+-----------+4 पंक्तियाँ सेट में (0.00 सेकंड)

आउटपुट को देखें, हमने row_number() की मदद से हर रिकॉर्ड के लिए एक नंबर असाइन किया है।


  1. MySQL में फ़्लोट्स को स्टोर करने के लिए क्या उपयोग किया जाता है?

    MySQL में फ़्लोट्स को स्टोर करने के लिए, आप DECIMAL () की अवधारणा का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाएं - टेबल बनाएं डेमोटेबल (कीमत DECIMAL(10,2));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.59 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें ( 12345678.99);क

  1. MySQL में "सेलेक्ट ट्रू" क्या है?

    यदि कोई पंक्ति मेल खाती है, तो कथन SELECT TRUE 1 लौटाता है। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(Name varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.54 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - सम्मिलित करें डेमोटेबल मानों में (डेविड); क्वेरी ठीक है, 1 पंक्ति प्रभ

  1. MySQL में सेलेक्ट @@identity क्या करता है?

    @@ पहचान वर्तमान सत्र में auto_increment कॉलम में अंतिम सम्मिलित मान लौटाती है। आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable(UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, UserName varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.67 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें