क्या MySQL के Group_Concat फ़ंक्शन को नल शामिल करने का कोई विकल्प है?MySQL GROUP_CONCAT Nulls
मेरे स्रोत तालिका से निम्न उदाहरण पर विचार करें:
7, 4=1,5=2
मैं निम्नलिखित प्राप्त करना चाहते हैं:
userId, questionId, selectionId
7, 3, NULL
7, 4, 1
7, 5, 2
जब मैं group_concat साथ चयन मेज पर क्वेरी, मैं निम्नलिखित मिलती है:
7, 3=NULL,4=1,5=2
संदर्भ के लिए, मेरी क्वेरी इस तरह दिखती है:
Select userId, GROUP_CONCAT(CONCAT(questionId, '=', selectionId))
From selection
Group by userId;
मैं भी इस तरह की एक IFNULL जोड़ने की कोशिश की:
Select userId, GROUP_CONCAT(IFNULL(CONCAT(questionId, '=', selectionId), 'NULL'))
From selection
Group by userId;
लेकिन वह निम्नलिखित का उत्पादन:
7, NULL,4=1,5=2
नोट - वहाँ एक अन्य जटिलता है कि मैं शामिल करना भूल जाते है। चयन आईडी एक और तालिका के लिए एक विदेशी कुंजी है। मैं select_text तालिका में बाएं बाहरी शामिल होने का उपयोग करता हूं। मेरी वास्तविक क्वेरी में उस तालिका के फ़ील्ड शामिल हैं (चयन के बाद ये फ़ील्ड NULL को हल करती हैं ID शून्य है)।
उत्पादित किया गया यह क्या करना चाहिए, चयन पर IFNULL आज़माएं, CONCAT पर नहीं। – piotrm
यह काम किया। धन्यवाद। – David
लेकिन आम तौर पर बोलते हुए- समूह कंसट के उपयोग से बचें! – IcedDante