Mysql
 sql >> Database >  >> RDS >> Mysql

Come arrotondare i numeri nel database a due cifre decimali utilizzando una query MySql

La documentazione su round dice:

Quindi il tuo update sarebbe:

UPDATE wp_postmeta 
SET    meta_value = ROUND(meta_value, 2)
WHERE  meta_key='_price'

Formati di visualizzazione

Se la tua preoccupazione è quella di visualizzare un numero con 2 cifre decimali, potrebbe essere meglio mantenere la precisione completa così com'è, ma cambiare il modo in cui select valori dalla tua tabella e noi format :

Senza l'aggiornamento di cui sopra, puoi ancora farlo:

SELECT FORMAT(meta_value, 2)
FROM   wp_postmeta
WHERE  meta_key='_price'

Se nella tua tabella hai il valore 15.002916 allora select sopra lo renderà in una stringa:15.00 .

Infine, se il tipo di dati di meta_value è un varchar (quindi, non un tipo di dati numerico), puoi ovviamente memorizzare gli zeri finali aggiuntivi:

UPDATE wp_postmeta 
SET    meta_value = FORMAT(meta_value, 2)
WHERE  meta_key='_price'

Ma renditi conto che funziona come previsto solo se il tipo di dati è del tipo testuale. Nei tipi di dati numerici i valori 15.00 e 15 sono esattamente lo stesso; è solo il loro formato di visualizzazione che è diverso.