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

एक कॉलम द्वारा समूहित करें और MySQL में एक विभाजक के साथ दूसरे कॉलम से संबंधित रिकॉर्ड प्रदर्शित करें

<घंटा/>

इसके लिए ग्रुप बाय के साथ GROUP_CONCAT() का इस्तेमाल करें। यहां, GROUP_CONCAT() का उपयोग कई पंक्तियों के डेटा को एक फ़ील्ड में संयोजित करने के लिए किया जाता है।

आइए पहले एक टेबल बनाएं -

mysql> टेबल बनाएं DemoTable(PlayerId int, ListOfPlayerName varchar(30));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.52 सेकंड)

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

mysql> डेमोटेबल मानों में डालें (100, 'क्रिस'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> डेमोटेबल मानों में डालें (101, 'डेविड'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) )mysql> डेमोटेबल वैल्यू (100, 'बॉब') में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> डेमोटेबल वैल्यू में डालें (100, 'सैम'); क्वेरी ओके, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> डेमोटेबल मानों में डालें (102, 'कैरोल'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड) mysql> डेमोटेबल मानों में डालें (101, 'टॉम'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> सम्मिलित करें डेमोटेबल मानों में (102, 'जॉन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड)

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

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

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

<पूर्व>+----------+---------------------+| प्लेयर आईडी | लिस्टऑफप्लेयरनाम |+----------+---------------------+| 100 | क्रिस || 101 | डेविड || 100 | बॉब || 100 | सैम || 102 | कैरल || 101 | टॉम || 102 | जॉन |+----------+---------------------+7 पंक्तियाँ सेट में (0.00 सेकंड)

एक कॉलम द्वारा समूहबद्ध करने के लिए क्वेरी निम्नलिखित है और एक विभाजक के साथ दूसरे कॉलम से परिणाम प्रदर्शित करता है -

mysql> PlayerId,group_concat(ListOfPlayerName विभाजक '/') को DemoTable समूह से PlayerId द्वारा AllPlayerNameWithSameId के रूप में चुनें;

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

<पूर्व>+----------+-------------------------------+| प्लेयर आईडी | AllPlayerNameWithSameId |+----------+--------------------------+| 100 | क्रिस/बॉब/सैम || 101 | डेविड/टॉम || 102 | कैरल/जॉन |+----------+-------------------------------+3 पंक्तियों में सेट (0.00 सेकंड)
  1. एक कॉलम से स्ट्रिंग प्राप्त करने के लिए MySQL क्वेरी और कॉमा से अलग किए गए मानों के साथ दूसरे कॉलम में अपनी स्थिति पाएं?

    इसके लिए FIND_IN_SET() का इस्तेमाल करें। आइए पहले एक टेबल बनाएं - mysql> create table DemoTable1866      (      Value1 int,      ListOfValues varchar(100)      ); Query OK, 0 rows affected (0.00 sec) इंसर्ट कमांड का उपयोग करके टेबल में

  1. डुप्लिकेट मान के साथ दूसरे कॉलम द्वारा MySQL समूह में टाइमस्टैम्प से पहली तारीख प्राप्त करें

    इसके लिए आप एग्रीगेट फंक्शन MIN() और GROUP BY का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1870 (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Value int, ShippingTimestamp varchar(100));क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिक

  1. MySQL क्वेरी अलग-अलग कॉलम के साथ एक टेबल से दूसरे टेबल में रिकॉर्ड कॉपी करने के लिए

    इसके लिए आप INSERT INTO SELECT स्टेटमेंट का इस्तेमाल कर सकते हैं। आइए पहले एक टेबल बनाएं - तालिका बनाएं DemoTable1900 ( ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY, ClientName varchar(20), ClientAge int default 29 ) auto_increment=1000;क्वेरी ठीक, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमां