आपको परिभाषित करना होगा, कैसे उन मानों को समूहीकृत करने के लिए जो समान category_id
साझा करते हैं . उन्हें जोड़ना? योग की गणना करें?
अल्पविराम द्वारा अलग किए गए मानों की सूचियां बनाने के लिए आपका कथन इस तरह दिख सकता है:
SELECT category_id
,string_agg(col1, ', ') AS col1_list
,string_agg(col2, ', ') AS col2_list
FROM items
GROUP BY category_id
string_agg(col1, ', ')
पुराने संस्करणों में आप array_to_string(array_agg(col1), ', ')
से स्थानापन्न कर सकते हैं . अधिक समेकित कार्य यहां
।
पोस्टग्रेएसक्यूएल में मूल्यों को एकत्रित करने के लिए क्लाइंट में समेकित मूल्यों के विपरीत स्पष्ट रूप से बेहतर दृष्टिकोण है। पोस्टग्रेज़ बहुत तेज़ है इस पर और यह (नेटवर्क) ट्रैफ़िक को कम करता है।