为什么ROUND()不起作用? 我想计算每周销售额与当月相比的百分比 我正在使用oracle / sql developer
SELECT DISTINCT (REPLACE (REPLACE(p.prod_desc,'this is the famous',''), 'size XXXL','size 14.00')|| ': PRODUCT_ID=' || p.prod_id ) "PRODUCT_DESCRIPTION",
SUM(s.AMOUNT_SOLD) "TOTAL_AMOUNT_SOLD",
CASE TO_CHAR( t.CALENDAR_WEEK_NUMBER) WHEN '13' THEN 'First week'
WHEN '14' THEN 'Second week'
WHEN '15' THEN 'Third week'
WHEN '16' THEN 'Fourth week'
WHEN '17' THEN 'Fifth week'
END "WEEK_IN_MONTH",
month.total AS "WEEKLY_PERCENT_SOLD",
t.CALENDAR_WEEK_NUMBER
FROM sh.PRODUCTS p INNER JOIN sh.SALES s
ON p.prod_id=s.prod_id
INNER JOIN TIMES t
ON s.time_id=t.time_id
inner join ( SELECT ROUND(SUM(s.AMOUNT_SOLD) * 100/ t.CALENDAR_MONTH_NUMBER, 2) as total, t.calendar_month_number
from SALES s
inner join times t
on s.time_id=t.time_id
group by t.CALENDAR_MONTH_NUMBER )
month
ON t.calendar_month_number = month.calendar_month_number
where p.prod_id IN (300,10,540)
AND TO_CHAR(t.time_id,'dd-MON-yy') LIKE '__-APR-00'
GROUP BY p.PROD_DESC, p.PROD_ID, t.CALENDAR_WEEK_NUMBER
ORDER BY 1, 4;