Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zaokrąglić liczby w bazie danych do dwóch miejsc po przecinku za pomocą zapytania MySql

dokumentacja dotycząca round mówi:

Więc twoja update byłoby:

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

Formaty wyświetlania

Jeśli zależy Ci na wyświetlaniu liczba z 2 cyframi dziesiętnymi, może lepiej zachować pełną precyzję bez zmian, ale zmień sposób select wartości z Twojej tabeli, a my format :

Bez powyższej aktualizacji nadal możesz to zrobić:

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

Jeśli w Twojej tabeli masz wartość 15.002916, to powyższy select wyrenderuje go do ciągu:15.00 .

Wreszcie, jeśli typ danych meta_value jest varchar (a więc nie jest to numeryczny typ danych), możesz oczywiście przechowywać dodatkowe końcowe zera:

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

Ale pamiętaj, że działa to zgodnie z oczekiwaniami tylko wtedy, gdy typ danych jest typu tekstowego. W numerycznych typach danych wartości 15.00 i 15 są dokładnie ten sam; to tylko ich format wyświetlania jest inny.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. bardzo duża tabela mysql i raportowanie

  2. Domyślna wartość modelu Django nie pojawia się w SQL

  3. Jak dodać niestandardowe ograniczenie CHECK w tabeli MySQL?

  4. Problem z parametrami połączenia w pliku konfiguracyjnym sieci

  5. Wybierasz samodzielny serwer wyszukiwania pełnotekstowego:Sphinx czy SOLR?