Mysql
 sql >> Base de données >  >> RDS >> Mysql

Soustraire des mois de la date actuelle sql

Voyez si cela vous aide :

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

Sinon, il serait bien de vérifier le type de la colonne "date" dans le tableau. Parfois, c'est varchar au lieu de date. C'est au cas où vous n'êtes pas celui qui a créé la table.