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

PostgreSQL - Vælg række med sammensat maksimumværdi fra 2 kolonner

Dette kan opnås ved hjælp af distinct on() og en brugerdefineret sorteringsdefinition for benefit_type:

select distinct on (merchant_id) *
from offer
order by merchant_id, 
         discount desc, 
         case when benefit_type = 'ALL' then 1 else 2 end;

Dette foretrækker højere rabat. Hvis to rabatter er ens, en benefit_type på ALL bruges som tie-breaker.

Online eksempel:http://rextester.com/TFBP17217




  1. Få populære ord i PHP+MySQL

  2. Sådan gendannes eller ændres Oracle sysdba adgangskode

  3. Sådan opretter du et nyt databasediagram ved hjælp af MySQL Workbench

  4. Tomcat6 kan ikke oprette forbindelse til MySql (driveren har ikke modtaget nogen pakker fra serveren)