sql >> Databasteknik >  >> RDS >> Mysql

Subtrahera månader från aktuellt datum sql

Se om detta hjälper :

SELECT contracts.currency , ROUND(SUM( 
CASE contracts.currency
    WHEN 'USD' THEN contracts.value*550
    WHEN 'UF'  THEN contracts.value*22000
    ELSE contracts.value
END),2)
AS real_value
FROM contracts
WHERE currency IN ('USD','UF','CLP') AND 
      date >=DATE_SUB(curdate(), INTERVAL 1 MONTH) AND
      date <=curdate()
GROUP BY currency 
ORDER BY currency ASC

Om inte, skulle det vara trevligt att kontrollera typen av kolumn "datum" i tabellen. Ibland är det varchar istället för datum. Detta är i fall du inte är den som har skapat tabellen.




  1. Det gick inte att hitta migreringsmetod:upp

  2. Hur får man ett värde från mysql-frågan utanför frågesatsen?

  3. hur visar man fullständig lagrad procedurkod?

  4. INNER eller VÄNSTER Sammanfoga flera bordsskivor till en enda rad