sql >> Database >  >> RDS >> Oracle

Top 2 aanbiedingen met de som van alle aanbiedingen

 with x as 
 (select row_number() over(partition by customer,make order by offer desc) rn,
  customer, make, zipcode, offer from tablename)
 , y as (select customer, make, zipcode, offer from x where rn <=2)
 , z as (select customer, make, zipcode, 
         case when rn = 1 then offer else 0 end as offer_1, 
         case when rn = 2 then offer else 0 end as offer_2 
         from y)
  select customer, make, zipcode, offer_1, offer_2, offer_1+offer_2 total_offer
  from z

Dit maakt gebruik van recursieve cte's om uw taak te volbrengen.



  1. Verkrijg de gegevens van een specifieke gebruiker in PHP

  2. Het type kolom wijzigen dat in andere weergaven wordt gebruikt

  3. Opmerkingen en vind-ik-leuks implementeren in de database

  4. Hoe een array op te slaan in een sessievariabele in php