sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan kan (eller kan jeg) VÆLGE DISTINCT på flere kolonner?

SELECT DISTINCT a,b,c FROM t

er omtrent svarende til:

SELECT a,b,c FROM t GROUP BY a,b,c

Det er en god idé at vænne sig til GROUP BY-syntaksen, da den er mere kraftfuld.

Til din forespørgsel vil jeg gøre det sådan her:

UPDATE sales
SET status='ACTIVE'
WHERE id IN
(
    SELECT id
    FROM sales S
    INNER JOIN
    (
        SELECT saleprice, saledate
        FROM sales
        GROUP BY saleprice, saledate
        HAVING COUNT(*) = 1 
    ) T
    ON S.saleprice=T.saleprice AND s.saledate=T.saledate
 )


  1. SQL Server Update Trigger, Hent kun ændrede felter

  2. Sådan fungerer INSTR()-funktionen i MySQL

  3. Hvad skal du kontrollere, hvis MySQL I/O-udnyttelsen er høj

  4. Hvordan bruger man Timestamp_to_scn og Scn_to_timestamp i Oracle?