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

क्या होता है यदि मैं एक कथन का उपयोग करके एक MySQL उपयोगकर्ता चर के लिए एक मान निर्दिष्ट करता हूं जो एकाधिक पंक्तियां देता है?


यदि हम एक स्टेटमेंट का उपयोग करके एक यूजर वेरिएबल के लिए एक वैल्यू असाइन करेंगे जो कई पंक्तियों को लौटाता है तो अंतिम रो से वैल्यू उस यूजर वेरिएबल में सेव हो जाएगी क्योंकि यूजर वेरिएबल सेव कर सकते हैं एकमात्र एकल मूल्य। उदाहरण के बाद, जिसमें हम तालिका 'निविदा' से डेटा का उपयोग कर रहे हैं, इसे प्रदर्शित करेंगे -

उदाहरण

mysql> select * from Tender;
+----+---------------+--------------+
| Sr | CompanyName   | Tender_value |
+----+---------------+--------------+
| 1  | Abc Corp.     |   250.369003 |
| 2  | Khaitan Corp. |   265.588989 |
| 3  | Singla group. |   220.255997 |
| 4  | Hero group.   |   221.253006 |
| 5  | Honda group   |   225.292266 |
+----+---------------+--------------+
5 rows in set (0.04 sec)

उपरोक्त परिणाम सेट तालिका 'निविदा' से डेटा दिखाता है। अब हम

. में मान निर्दिष्ट करेंगे

कॉलम 'कंपनीनाम' वैरिएबल @name में इस प्रकार है -

mysql> Select @name := companyname from tender;
+----------------------+
| @name := companyname |
+----------------------+
| Abc Corp.            |
| Khaitan Corp.        |
| Singla group.        |
| Hero group.          |
| Honda group          |
+----------------------+
5 rows in set (0.00 sec)

लेकिन, अब जब हम इस वेरिएबल को संदर्भित करते हैं, तो यह केवल उस कंपनी का नाम देता है जो अंतिम पंक्ति में थी। ऐसा इसलिए है क्योंकि उपयोगकर्ता चर केवल एक ही मान को संग्रहीत कर सकता है।

mysql> Select @name;
+-------------+
| @name       |
+-------------+
| Honda group |
+-------------+
1 row in set (0.00 sec)

  1. एक MySQL चयन कथन से एक चर के लिए भंडारण मूल्य?

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

  1. MySQL IN () का उपयोग करके कई चयनित पंक्तियों को प्रदर्शित करें

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1045(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100))AUTO_INCREMENT=100;query OK, 0 Rows प्रभावित (0.62 sec) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1045(FirstName) मान (एडम) में डालें; क्वेरी ठीक है, 1 पंक्त

  1. समूह MySQL पंक्तियों को स्तंभ मान द्वारा एक सरणी में?

    पंक्तियों को एक सरणी में समूहित करने के लिए, ORDER BY क्लॉज के साथ GROUP_CONCAT() का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.78 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (102, क्रिस); क्वेरी ठीक है, 1 पंक्ति प्रभा