嗨,我对Oracle很新。我想计算一个月完成的百分比。我知道这将是当天除以该月的最后一天,但我不知道如何在Oracle中的SQL中编写该文件Oracle SQL月完成百分比公式
因此,今天它将是自9月21日以来的21/30并且该月有30天。一个月完成的百分比是70%,这就是我想在oracle中得到
嗨,我对Oracle很新。我想计算一个月完成的百分比。我知道这将是当天除以该月的最后一天,但我不知道如何在Oracle中的SQL中编写该文件Oracle SQL月完成百分比公式
因此,今天它将是自9月21日以来的21/30并且该月有30天。一个月完成的百分比是70%,这就是我想在oracle中得到
试试这个:
SELECT (extract(day from SYSDATE)/
extract(day from LAST_DAY(SYSDATE)))* 100
FROM dual;
请注意我对OP的评论。如果SYSDATE在2017年9月21日00:00以24小时制表示,则计算将返回21/30。这有点奇怪,因为当时正好20天过去了,而不是21. – mathguy
所以我们可以trunc(sysdate) – OldProgrammer
需要添加四舍五入到计算公式'SELECT round((extract(day from SYSDATE + 1)/ 摘录(从LAST_DAY(SYSDATE)开始的日期))* 100) FROM dual;' –
请提供您的表(S)结构与样本数据一起和期望的输出。 –
你是什么意思?完成百分比,直到今天几点?你的计算(21/30)直到今天的午夜,是你需要的吗?即使在今天(上午)结束时的午夜时间? – mathguy