我正在SAS中通过passthru运行db2 sql,运行正常。我遇到的问题是输出舍入。我已经尝试了通过format=的不同选项,但无法得到预期的结果。
PROC SQL;
CREATE TABLE WORK.ISSUES1671 AS
SELECT * FROM CONNECTION TO MYDB (
SELECT COUNT(DISTINCT ISSUE_ID) AS ISSUE_ID,
SUM(PAID_TO_DT_AMT) AS PAID_TO_DATE_YTD
FROM LOD.RMD
);
QUIT;
这将为我提供一个表,其中的ISSUE_ID PAID_TO_DATE_YTD为3746 1015768311.9
我于是有了这个:
PROC SQL;
SELECT
sum(PAID_TO_DATE_YTD-843686339.02) AS PAIDOUT_YTD FORMAT= DOLLAR18.2
FROM WORK.ISSUES1671;
QUIT;
得出的结果是$172,081,972.83,这是正确的,但我希望舍入到$172.1
有什么帮助或想法,我怎么才能得到这个显示?
1条答案
按热度按时间dphi5xsq1#
我认为round函数在db2中的工作方式有点不同。
https://www.ibm.com/docs/en/db2-for-zos/11?topic=functions-round
我建议使用DB2-SQL,它运行在db2而不是SAS中,如下所示:SELECT ROUND(本年迄今已付,-5)FROM ;
不幸的是,我没有一个db2示例来证明这一点。