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

यदि आईडी समान है तो पंक्तियों को मर्ज करने के लिए MySQL क्वेरी और अन्य कॉलम से उच्चतम संगत मान प्रदर्शित करें

<घंटा/>

इसके लिए ग्रुप बाय क्लॉज के साथ एग्रीगेट फंक्शन MAX() का इस्तेमाल करें। आइए पहले एक टेबल बनाएं -

mysql> create table DemoTable
(
   Id int,
   Value1 int,
   Value2 int,
   Value3 int,
   Value4 int
);
Query OK, 0 rows affected (0.61 sec)

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

mysql> insert into DemoTable(Id,Value4) values(100,30);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(Id,Value1,Value2,Value3) values(100,20,60,40);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(Id,Value2,Value3,Value4) values(100,90,100,110);
Query OK, 1 row affected (0.10 sec)

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

mysql> select *from DemoTable;

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

+------+--------+--------+--------+--------+
| Id   | Value1 | Value2 | Value3 | Value4 |
+------+--------+--------+--------+--------+
| 100  | NULL   | NULL   | NULL   | 30     |
| 100  | 20     | 60     | 40     | NULL   |
| 100  | NULL   | 90     | 100    | 110    |
+------+--------+--------+--------+--------+
3 rows in set (0.00 sec)

यदि Id समान है और अन्य स्तंभों से उच्चतम संगत मान प्रदर्शित करता है, तो पंक्तियों को मर्ज करने की क्वेरी निम्नलिखित है -

mysql> select Id,max(Value1) as Value1,max(Value2) as Value2,max(Value3) as Value3,max(Value4) as Value4
from DemoTable
group by Id;

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

+------+--------+--------+--------+--------+
| Id   | Value1 | Value2 | Value3 | Value4 |
+------+--------+--------+--------+--------+
| 100  | 20     | 90     | 100    | 110    |
+------+--------+--------+--------+--------+
1 row in set (0.00 sec)

  1. MySQL क्वेरी बाईं ओर से केवल 15 शब्द प्रदर्शित करने के लिए?

    इसके लिए MySQL में LEFT का प्रयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.59 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल मानों में डालें (डेटा संरचना और एल्गोरिथम के साथ सी); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.33 सेकंड) चयन कथन का उपयोग कर

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

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

  1. कई पंक्तियों से स्ट्रिंग को एक पंक्ति में संयोजित करने के लिए एक एकल MySQL क्वेरी और अन्य कॉलम में संबंधित उपयोगकर्ता आईडी योग प्रदर्शित करें?

    इसके लिए आप GROUP_CONCAT() का इस्तेमाल कर सकते हैं। User Id जोड़ने के लिए SUM() का प्रयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1960 (StudentId int, StudentName varchar(20));क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTabl