जबकि दस्तावेज़ीकरण पूरी तरह से स्पष्ट नहीं है, यह बताता है कि:
<ब्लॉकक्वॉट>यदि INSERT कमांड में रिटर्निंग क्लॉज है, तो परिणाम एक सेलेक्ट स्टेटमेंट के समान होगा, जिसमें रिटर्निंग सूची में परिभाषित कॉलम और मान शामिल होंगे, जो कमांड द्वारा डाली गई पंक्तियों पर गणना की जाएगी।
अब "इसी तरह" एक आयरनक्लैड गारंटी नहीं है, और मैंने इसे मेलिंग सूची पर चर्चा के लिए उठाया है ... लेकिन व्यवहार में, PostgreSQL RETURNING
में मानों के क्रम के साथ खिलवाड़ नहीं करेगा। . यह संभावना नहीं है कि हम कभी भी अनुकूलन के लिए चाहते हुए भी सक्षम होंगे, क्योंकि बहुत सारे ऐप इस पर भरोसा करते हैं कि इनपुट के समान ही ऑर्डर किया जा रहा है।
तो... INSERT INTO ... VALUES (...), (...), ... RETURNING ...
के लिए और INSERT INTO ... SELECT ... ORDER BY ... RETURNING ...
के लिए यह मान लेना सुरक्षित होना चाहिए कि परिणाम संबंध इनपुट के समान क्रम में है।