sql >> Databasteknik >  >> RDS >> PostgreSQL

Sök efter en modell given prisklass i olika valutor

Du kan använda SQL CASE för det:

SELECT price, currency,
       CASE WHEN currency='USD' THEN price * 1
            WHEN currency='RUB' THEN price * 65
            ELSE price
       END as final_price
FROM products
WHERE final_price BETWEEN 10 AND 100

Rails version:

Product.select("price, currency, CASE 
  WHEN currency='USD' THEN price * 1  
  WHEN currency='RUB' THEN price * 65 
  ELSE price END as final_price")
.where("final_price BETWEEN ? AND ?", 10, 100)


  1. Konvertera TIMESTAMP skillnad kolumndata till strängformat

  2. Hur kontrollerar jag om en kolumn är tom eller null i MySQL?

  3. MySQL implementerar tabeller i databasen

  4. mysqldump misslyckas med Hoppa över dumpdata för tabellen 'tabell1', den har inga fält