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