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

MySQL 1-3 के बीच यादृच्छिक संख्या के साथ संबंधित कॉलम को अपडेट करें?

<घंटा/>

किसी श्रेणी में यादृच्छिक संख्याओं के लिए, आपको MySQL से रैंड () विधि का उपयोग करने की आवश्यकता है। अपडेट के लिए सिंटैक्स इस प्रकार है -

अपना टेबलनाम अपडेट करें अपना कॉलमनाम सेट करें=मान जहां आपका कॉलमनाम2=(SELECTFLOOR(1+RAND()*3));

उपरोक्त क्वेरी में, कथन FLOOR(1+RAND()*3) 1-3 के बीच की संख्या उत्पन्न करता है और कॉलम को अपडेट करता है।

उपरोक्त सिंटैक्स को समझने के लिए, आइए पहले एक टेबल बनाएं। तालिका बनाने की क्वेरी इस प्रकार है -

mysql> टेबल अपडेट बनाएंRowWith1To3 -> ( -> Id int, -> Name varchar(100) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.47 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -

mysql> updateRowWith1To3 मान (1,'जॉन') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.24 सेकंड) mysql> updateRowWith1To3 मान (2, 'सैम') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) )mysql> updateRowWith1To3 मान (3, 'कैरोल') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) mysql> updateRowWith1To3 मान (4, 'माइक') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> updateRowWith1To3 मानों में डालें (5, 'बॉब'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.10 सेकंड) mysql> updateRowWith1To3 मान (6, 'डेविड') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) 

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -

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

आउटपुट

<पूर्व>+----------+----------+| आईडी | नाम |+----------+----------+| 1 | जॉन || 2 | सैम || 3 | कैरल || 4 | माइक || 5 | बॉब || 6 | डेविड |+------+-------+6 पंक्तियों में सेट (0.00 सेकंड)

यहां वह क्वेरी है जिसका उपयोग कॉलम नाम को 1-3 के बीच यादृच्छिक संख्या के साथ अपडेट करने के लिए किया जा सकता है -

mysql> अपडेट अपडेटरोविथ1टू3 सेट नाम ='मैरी' जहां आईडी =(फर्श का चयन करें (1 + रैंड () * 3)); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) पंक्तियाँ मिलान:1 परिवर्तित:1 चेतावनियाँ:0 

अब आप तालिका की जांच कर सकते हैं। कॉलम नाम मैरी के साथ 1-3 के बीच अद्यतन किया गया होगा। तालिका से रिकॉर्ड की जाँच करने के लिए क्वेरी इस प्रकार है -

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

आउटपुट

<पूर्व>+----------+----------+| आईडी | नाम |+----------+----------+| 1 | मैरी || 2 | सैम || 3 | कैरल || 4 | माइक || 5 | बॉब || 6 | डेविड |+------+-------+6 पंक्तियों में सेट (0.00 सेकंड)
  1. JSON प्रारूप के साथ एक MySQL कॉलम अपडेट करें?

    JSON प्रारूप जैसे रिकॉर्ड प्रदर्शित करने के लिए, MySQL concat() का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.86 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। यहां, हमने कुछ भी नहीं डाला है - DemoTable1373 मान() में डालें; क्वेरी ठीक है, 1 पंक्ति प्

  1. मैं कैसे पता लगा सकता हूं कि अद्यतन अद्यतन घटना MySQL में क्वेरी के साथ निकाल दी गई है या नहीं?

    आप row_count() की मदद से पता लगा सकते हैं। यदि row_count () 1 लौटाता है, तो इसका अर्थ है कि यह एक नया रिकॉर्ड है। यदि यह 2 लौटाता है, तो इसका मतलब है कि अद्यतन घटना को क्वेरी से निकाल दिया गया है। निम्नलिखित वाक्य रचना है - पंक्ति का चयन करें (); आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ

  1. MySQL क्वेरी संबंधित कॉलम मान से केवल कोई मान नहीं लौटाने के लिए

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1829 (नाम varchar(20), istopper ENUM(YES,NO) );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1829 मानों में डालें (डेविड, हां); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.00 सेकंड) चयन कथन का उ