向查询结果中插入空数据
在写一个查询的时候遇到一个问题:我要查询某个月的订单,查询结果中会列出当月所有订单,但结果不是我想要的,因为,在这一个月中并不是每一天都有订单,比如,1、2、10、11、14、19、24号有订单,其他天没有订单。我想要的结果是,如果这个月某天没订单,则订单数为0。
SELECT
TO_CHAR(COUNT(DISTINCT EOOR.EOOR_ORDER_NO)) AS ORDERS, -- 总订单数
TO_CHAR(EOOR.EOOR_ORDER_TIME,'DD') AS THEDAY, -- 这个月第N天
EOOR.EOOR_ORDER_DEPARTMENT_NAME AS OBJECT, -- 其他标志,不用理会
'1.总订单数 ' AS THETYPE, -- 同上
'DEPARTMENT' AS ROLE -- 其他标志,不用理会
FROM EO_ORDER EOOR
LEFT JOIN EO_ORDER_MILESTONE EOOM
ON EOOR.EOOR_ORDER_NO = EOOM.EOOM_ORDER_NO
AND EOOM.EOOM_ORDER_NO IS NOT NULL
WHERE 1 = 1
AND TO_CHAR(EOOR.EOOR_ORDER_TIME,'YYYY-MM') = '2013-08'
GROUP BY EOOR.EOOR_ORDER_DEPARTMENT_NAME,TO_CHAR(EOOR.EOOR_ORDER_TIME,'DD')