sql >> Database >  >> RDS >> Oracle

ORACLE SQL selecteer distinct, geen duplicaten verwijderen

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.



  1. Hoe CSV-bestandsgegevens importeren in een PostgreSQL-tabel?

  2. Mysterieuze MySQL-fout nabij '' op regel 1

  3. PostgreSQL JSON-kolom toewijzen aan een Hibernate-entiteitseigenschap

  4. verwijder lege regel afgedrukt uit hive-query-uitvoer met behulp van python