Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle [प्रक्रिया] - Sum फंक्शन WHERE क्लॉज की उपेक्षा करता है

आपकी समस्या यह है कि आपके इनपुट पैरामीटर का नाम आपके कॉलम के समान है, इसलिए जब क्वेरी दिखाई देती है

WHERE SCOTT.EMP.DEPTNO = deptno

यह deptno . की व्याख्या करता है SCOTT.EMP.DEPTNO . के रूप में , जिसका अर्थ है कि यह deptno . के सभी मानों के लिए सही है . अपने इनपुट पैरामीटर का नाम बदलें और क्वेरी उम्मीद के मुताबिक काम करेगी।

आपको NVL . का भी उपयोग करना चाहिए यह सुनिश्चित करने के लिए कि व्यक्तिगत SUM मान NULL नहीं हैं , जैसे कि उनमें से कोई एक NULL है इससे उनका योग हो जाएगा NULL साथ ही यानी

select NVL(SUM(SAL), 0) INTO SALSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;
select NVL(SUM(COMM), 0) INTO COMMSUM FROM SCOTT.EMP WHERE SCOTT.EMP.DEPTNO = numerdept;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. oracle एक दूसरे के 1 मिनट के भीतर बेची गई वस्तुओं के लिए तिथियों का चयन करें

  2. CLOB डेटा को एक डेटाबेस से दूसरे दूरस्थ ORACLE डेटाबेस में DBLinks वाले कैसे स्थानांतरित करें?

  3. तालिका नाम और संबंधित गिनती सूचीबद्ध करने के लिए ओरेकल प्रक्रिया

  4. Oracle तालिका 2 में सम्मिलित करें, फिर तालिका 1 से हटाएं, विफल होने पर अपवाद

  5. Oracle में शेष () फ़ंक्शन के व्यवहार को समझना