Subject | Re: {Disarmed} Re: [firebird-support] How do I figure what percentage one value is of another value inside a stored procedure? |
---|---|
Author | SoftTech |
Post date | 2011-08-04T13:12Z |
Hmm, common math, who knew :>) And seems simple enough but returns an error "arithmetic exception, numeric overflow, or string truncation"
Adding "((CSD.SETTLEMENT_AMOUNT / CSD.ORIG_BAL_DUE) * 100.00) AS PERCENTAGE" to the SQL statement below creates the error.
Both SETTLEMENT_AMOUNT and ORIG_BAL_DUE are defined as Numeric(15,2)
SELECT CS.ACCT_ID,
CS.CASE_ID,
CSD.ITEM_DESC,
CSD.ORIG_BAL_DUE,
CSD.SETTLEMENT_AMOUNT,
((CSD.SETTLEMENT_AMOUNT / CSD.ORIG_BAL_DUE) * 100.00) AS PERCENTAGE
FROM CASE_SETTLEMENT_DETAIL CSD
JOIN CASE_SETTLEMENT CS ON CS.SETTLEMENT_ID = CSD.SETTLEMENT_ID
AND CS.SETTLEMENT_SEQ_NO = CSD.SETTLEMENT_SEQ_NO
WHERE CS.ACCT_ID = :ACCT_ID
AND CS.CASE_ID = :CASE_ID
AND CS.STATUS_CODE = 'A'
ORDER BY CSD.SEQ_NO
Any ideas what I may have done wrong?
Thanks,
Mike
Adding "((CSD.SETTLEMENT_AMOUNT / CSD.ORIG_BAL_DUE) * 100.00) AS PERCENTAGE" to the SQL statement below creates the error.
Both SETTLEMENT_AMOUNT and ORIG_BAL_DUE are defined as Numeric(15,2)
SELECT CS.ACCT_ID,
CS.CASE_ID,
CSD.ITEM_DESC,
CSD.ORIG_BAL_DUE,
CSD.SETTLEMENT_AMOUNT,
((CSD.SETTLEMENT_AMOUNT / CSD.ORIG_BAL_DUE) * 100.00) AS PERCENTAGE
FROM CASE_SETTLEMENT_DETAIL CSD
JOIN CASE_SETTLEMENT CS ON CS.SETTLEMENT_ID = CSD.SETTLEMENT_ID
AND CS.SETTLEMENT_SEQ_NO = CSD.SETTLEMENT_SEQ_NO
WHERE CS.ACCT_ID = :ACCT_ID
AND CS.CASE_ID = :CASE_ID
AND CS.STATUS_CODE = 'A'
ORDER BY CSD.SEQ_NO
Any ideas what I may have done wrong?
Thanks,
Mike
----- Original Message -----
From: Thomas Steinmaurer
To: firebird-support@yahoogroups.com
Sent: Thursday, August 04, 2011 7:53 AM
Subject: {Disarmed} Re: [firebird-support] How do I figure what percentage one value is of another value inside a stored procedure?
> Firebird 1.5.3
>
> Is it possible to return a percentage of the following within a stored
> procedure?
>
> Value A = $1000.00
> Value B = $600.00
>
> Result C = 60%
(B / A) * 100
;-)
--
With regards,
Thomas Steinmaurer
Upscene Productions
http://www.upscene.com
http://blog.upscene.com/thomas/
Download LogManager Series, FB TraceManager today!
Continuous Database Monitoring Solutions supporting
Firebird, InterBase, Advantage Database, MS SQL Server
and NexusDB!
--
MailScanner Virus/Spam/Malware: PASS (GZ)
[Non-text portions of this message have been removed]