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

MySQL के साथ तालिका से यादृच्छिक पंक्तियाँ प्राप्त करें

<घंटा/>

इसके लिए आप PREPARE स्टेटमेंट का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं -

mysql> टेबल बनाएं DemoTable(FirstName varchar(100), CountryName varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.53 सेकंड)

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

mysql> डेमोटेबल मानों में डालें ('एडम', 'यूएस'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> डेमोटेबल मानों में डालें ('क्रिस', 'एयूएस'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.15 सेकंड)mysql> डेमोटेबल मानों में डालें ('रॉबर्ट', 'यूके'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.32 सेकंड)

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

mysql> डेमोटेबल से *चुनें;

यह निम्नलिखित आउटपुट उत्पन्न करेगा -

<पूर्व>+-----------+---------------+| प्रथम नाम | देश का नाम |+-----------+---------------+| एडम | यूएस || क्रिस | ऑस्ट्रेलिया || रॉबर्ट | यूके | +-----------+---------------+3 पंक्तियाँ सेट में (0.00 सेकंड)

एक ही क्वेरी में रैंडम पंक्तियों को लाने की क्वेरी निम्नलिखित है -

mysql> सेट @value:=ROUND((DemoTable से गिनती (*) चुनें) * रैंड ()); क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) mysql> @query सेट करें:=CONCAT ('से चुनें * से डेमोटेबल LIMIT ', @value,', 1'); क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं (0.00 सेकंड) mysql> @query से myStatement तैयार करें; क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं (0.00 सेकंड) स्टेटमेंट तैयार किया गया हैmysql> myStatement निष्पादित करें; +-- ---------+---------------+| प्रथम नाम | देश का नाम |+-----------+---------------+| क्रिस | AUS |+----------+------------+1 पंक्ति में सेट (0.00 सेकंड)mysql> डीललोकेट तैयार myStatement;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं ( 0.00 सेकंड)

  1. MySQL वाली तालिका में केवल विशिष्ट पंक्तियों को हटाएं

    केवल विशिष्ट पंक्तियों को हटाने के लिए, MySQL NOT IN () का उपयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1830 (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20) )AUTO_INCREMENT=101;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल

  1. MySQL में पंक्तियों को एक तालिका से दूसरी तालिका में कैसे कॉपी करें?

    इसके लिए INSERT INTO SELECT स्टेटमेंट का इस्तेमाल करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1879 (Id int, Name varchar(20));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1879 मानों में डालें (103, एडम स्मिथ); क्वेरी ठीक है,

  1. एक ही क्वेरी में IN () के साथ MySQL तालिका से रिकॉर्ड हटाएं

    आइए एक टेबल बनाएं - टेबल बनाएं DemoTable1922 (StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20));क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1922(StudentName) मानों (माइक) में डालें; क्वेरी ठीक है, 1 पंक्त