PostgreSQL में, div() फ़ंक्शन अपने पहले तर्क के पूर्णांक भागफल को उसके दूसरे तर्क से विभाजित करके लौटाता है।
सिंटैक्स
आधिकारिक वाक्य रचना इस प्रकार है:
div(y numeric, x numeric) उदाहरण
यह कैसे काम करता है इसका एक उदाहरण यहां दिया गया है।
SELECT div(12, 3); परिणाम:
4
इस मामले में मैंने 12 को 3 से विभाजित किया है, और परिणाम 4 है।
अधिक प्रभाग
यहाँ उसी संख्या पर कुछ और विभाजन दिए गए हैं।
SELECT
div(12, 1),
div(12, 2),
div(12, 3),
div(12, 4); परिणाम:
div | div | div | div -----+-----+-----+----- 12 | 6 | 4 | 3
आंशिक परिणाम
यह फ़ंक्शन पूर्णांक भागफल देता है, इसलिए परिणाम से कोई भी भिन्नात्मक राशि हटा दी जाती है।
SELECT div(12, 5); परिणाम:
2
12 विभाजित 5 वास्तव में 2.4 है, लेकिन यह फ़ंक्शन भिन्नात्मक भाग को वापस नहीं करता है और इसलिए हमें 2 मिलता है।
कोई राउंडिंग भी होती नहीं दिख रही है। उदाहरण के लिए, 9 को 5 से भाग देने पर 1.8 है, लेकिन div() 1 लौटाता है (यह 2 तक पूर्णांकित नहीं होता है)।
SELECT div(9, 5); परिणाम:
1
तो यह अधिक व्यवहार करता है जैसे trunc() . को लागू करना (या शायद floor() . भी ) परिणाम के लिए, बजाय round() या ceiling() ।
शून्य से भाग
यदि आप किसी संख्या को शून्य से विभाजित करने का प्रयास करते हैं, तो आपको एक त्रुटि मिलेगी।
SELECT div(12, 0); परिणाम:
ERROR: division by zero
लेकिन अगर आप शून्य को किसी अन्य संख्या से विभाजित करते हैं, तो आपको शून्य ही मिलेगा।
SELECT div(0, 12); परिणाम:
0