Je begrijpt niet wat distinct
is. Het is geen functie. Het is een modifier op select
en het beïnvloedt alle kolommen worden geselecteerd. Het gedraagt zich dus precies zoals het hoort.
Als u aggregaties per postcode en week wilt, dan zijn dit de enige twee kolommen die in de group by
moeten staan :
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)
U kunt waarschijnlijk region_id
. opnemen ook, ervan uitgaande dat elke postcode zich in één regio bevindt.