Du misforstår hvad distinct
er. Det er ikke en funktion. Det er en modifikator på select
og det påvirker alle kolonner, der vælges. Så den opfører sig præcis, som den skal.
Hvis du vil have sammenlægninger efter postnummer og uge, så er det de eneste to kolonner, der skal være i group by
:
SELECT vo.ZIP_CODE, TO_CHAR(ca.CALENDAR_WEEK),
-- vo.REGION_ID
COUNT(vo.ORDER_ID),
SUM(vo.AMOUNT)
FROM VENDOR_ORDERS vo JOIN
CALENDAR ca
ON TRUNC(vo.ORDER_CREATION_DATETIME) = sd.CALENDAR_DATE
WHERE vo.REGION_ID = 1
GROUP BY vo.ZIP_CODE, TO_CHAR(ca.CALENDAR_WEEK)
Du kunne sandsynligvis inkludere region_id
også, forudsat at hvert postnummer er i én region.