मैं परिणामों को GROUP_CONCAT फ़ंक्शन में ऑर्डर करना चाहता हूं। समस्या यह है, कि group_concat-समारोह में चयन (कल्पना का चयन करें) इस तरह एक और समारोह है,:इसमें एक फ़ंक्शन के साथ एक MySQL GROUP_CONCAT में ऑर्डर करना
SELECT a.name,
GROUP_CONCAT(DISTINCT CONCAT_WS(':', b.id, c.name) ORDER BY b.id ASC) AS course
FROM people a, stuff b, courses c
GROUP BY a.id
मैं की तरह (b.id द्वारा आदेश दिया) एक परिणाम प्राप्त करना चाहते हैं:
michael 1:science,2:maths,3:physics
लेकिन मैं मिलता है:
michael 2:maths,1:science,3:physics
किसी को भी पता है कि कैसे मैं यहाँ मेरी group_concat में b.id से आदेश कर सकते हैं?
[GROUP_CONCAT] (http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat) अपने स्वयं के 'ऑर्डर' का समर्थन करता है BY 'खंड ... यह नहीं जानते कि उपयोगकर्ता द्वारा परिभाषित कार्य क्या है, या करता है, हमें आपकी सहायता करने में सक्षम होने में सहायता नहीं करेगा। –
यह वही है जैसा मैंने लिखा था: "group_concat" फ़ंक्शन के भीतर फ़ंक्शन "concat_ws"। मैंने कभी नहीं कहा कि यह एक उपयोगकर्ता परिभाषित समारोह था। – acme
यह स्पष्ट नहीं है कि एक वैध समाधान कैसे लिखना है, क्योंकि टेबल संरचना, सामग्री और तालिकाओं के बीच संबंध अनिर्दिष्ट है (यानी विनिर्देशों में कोई शामिल नहीं है)। – outis