2011-10-07 11 views
90

मैं एक प्रश्न मैं कहाँ GROUP_CONCAT उपयोग कर रहा हूँ और के रूप में अपने परिणाम के लिए अल्पविराम हो सकती है एक कस्टम विभाजक है तो मेरे उत्पादन है:group_concat अल्पविराम विभाजक MySQL

Result A----,Result B----,Result C---- 

मैं यह इतना उत्पादन होता है कैसे कर सकते हैं:

Result A----Result B----Result C---- 

मुझे लगा कि यह एक कस्टम विभाजक के विचार था!

विफल होने से, क्या आप अपने परिणामों में अल्पविराम से बच सकते हैं, इसलिए मैं GROUP_CONCAT अल्पविरामों से PHP में विस्फोट कर सकता हूं?

+7

हमें अपना कोड दिखाएं। –

+0

कॉमा कहां से आ रहे हैं? क्या वे विभाजक हैं, या परिणामों का हिस्सा हैं? सवाल का वह हिस्सा मुझे स्पष्ट नहीं है। –

+1

GROUP_CONCAT (artists.artistname, '----') मेरा समूह कॉन्सट लाइन है - जैसा कि आप देख सकते हैं, मैंने अल्पविराम के रूप में अल्पविराम नहीं रखा है - वे परिणाम में नहीं हैं लेकिन आउटपुट – user984580

उत्तर

241

ऐसा लगता है कि आप GROUP_CONCAT फ़ंक्शन में SEPARATOR कीवर्ड खो रहे हैं।

GROUP_CONCAT(artists.artistname SEPARATOR '----') 

जिस तरह से आप यह लिखा है, आप डिफ़ॉल्ट अल्पविराम विभाजक का उपयोग कर '----' तार के साथ artists.artistname श्रृंखलाबद्ध रहे हैं।

+3

में दिखाएं धन्यवाद - यह ऐसा लगता है कि मैंने कुछ बिंदु पर group_concat पर एक गलत ट्यूटोरियल पढ़ा। – user984580

1

या, यदि आप एक विभाजन कर रहे हैं - में शामिल होने:

GROUP_CONCAT(split(thing, " "), '----') AS thing_name, 

आप inclue WITHIN RECORD कर सकते हैं, इस तरह:

GROUP_CONCAT(split(thing, " "), '----') WITHIN RECORD AS thing_name, 

BigQuery API page से

5

इस

कोशिश
GROUP_CONCAT(artists.artistname SEPARATOR '----') 
+1

आपने 6 साल बाद उत्तर दिया और आपने उच्चतम वोट किए गए उत्तर से अधिक कुछ नहीं लिखा :) – ElChupacabra