SQL查询:
SELECT SUM (gross_amount) /
(SELECT TO_CHAR (
LAST_DAY (TO_DATE (MAX (accounting_period), 'YYYYMM')),
'DD')
FROM t_beta_invoice)
FROM t_beta_invoice_details
我尝试通过将总金额除以表 t_beta_invoice 中给定月份的天数来计算每日发票金额。首先,我获取会计期间,其格式为“YYYYMM”,并找到其最后一天来计算它是否包含28、29、30或31天。
但每当我尝试运行此函数时,它都会给出*ORA-00937: not a single-group group function*
。任何人都可以帮助解决这种情况吗?
最佳答案
尝试使用它并确保第二个查询不返回 0。
select
(SELECT SUM (gross_amount)
FROM t_beta_invoice_details)
/
(SELECT TO_CHAR (LAST_DAY (TO_DATE (MAX (accounting_period), 'YYYYMM')), 'DD')
FROM t_beta_invoice)
FROM DUAL;
关于sql - Oracle中没有一个函数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18208353/