sql >> Databasteknik >  >> RDS >> Mysql

Hur man avrundar siffror i databasen till två decimaler med en MySql-fråga

dokumentationen om round säger:

Så din update skulle vara:

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

Visningsformat

Om du bryr dig om att visa ett tal med 2 decimalsiffror, kan det vara bättre att behålla den fullständiga precisionen som den är, men ändra hur du select värden från din tabell och oss format :

Utan ovanstående uppdatering kan du fortfarande göra detta:

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

Om du i din tabell har värdet 15.002916 så select ovan renderar den till en sträng:15.00 .

Slutligen, om datatypen meta_value är en varchar (så, inte en numerisk datatyp), du kan naturligtvis lagra de ytterligare efterföljande nollorna:

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

Men inse att detta bara fungerar som förväntat om datatypen är av texttyp. I numeriska datatyper är värdena 15.00 och 15 exakt det samma; det är bara deras visningsformat som är annorlunda.



  1. Hur man snabbt skriver Select Query i SQL Server - SQL Server / TSQL Tutorial Del 108

  2. Importera MySQL-dump till PostgreSQL-databas

  3. Laravel 5.3 Skapa modeller Returfält har inget standardvärde

  4. Anslutning kan inte castas till oracle.jdbc.OracleConnection