繁体   English   中英

如何在Oracle SQL函数中计算新参数

[英]How to do a calculation of a new parameter within an Oracle SQL Function

我正在尝试使用“发票”表中的某些值来计算此功能中的余额。 我不确定确切在何处放置计算行。 任何帮助将非常感激!

Create or Replace Function Get_balance_due(
f_invoice_id In Number)
Return Number
AS
    balance_due Number;
    f_invoice_total Number;
    f_payment_total Number;
    f_credit_total Number;


Begin
    select (vendor_id into f_vendor_id,
    invoice total into f_invoice_total,
    payment_total into f_payment_total,
    credit_total into f_credit_total)

From
    invoices
Where
    invoice_id = f_invoice_id
    balance_due = f_invoice_total - f_payment_total - f_credit_total;
Return (balance_due);
End;
/
SHOW ERRORS Function Get_balance_due;

这样尝试

CREATE OR REPLACE 
FUNCTION get_balance_due(
         f_invoice_id IN NUMBER)
         RETURN NUMBER
AS
     balance_due NUMBER;
     f_invoice_total NUMBER;
     f_payment_total NUMBER;
     f_credit_total NUMBER;

BEGIN
     SELECT invoice total, payment_total, credit_total
     INTO  f_invoice_total, f_payment_total, f_credit_total
     FROM  invoices
     WHERE invoice_id = f_invoice_id;

     balance_due := f_invoice_total - f_payment_total - f_credit_total;

RETURN balance_due;
END;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM