PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak zmienić ustawienia regionalne podczas formatowania liczb w PostgreSQL?

Jeśli formatujesz liczbę w PostgreSQL i chcesz zmienić ustawienia regionalne, aby używane były prawidłowe separatory grup i dziesiętne, oto jak możesz to zrobić.

Istnieją dwie interesujące zmienne systemowe:

lc_monetary Ustawia ustawienia regionalne używane do formatowania kwot pieniężnych.
lc_numeric Ustawia ustawienia regionalne używane do formatowania liczb.

Można je ustawić za pomocą SET oświadczenie.

Na przykład:

SET lc_numeric = 'en_US';

Wynik:

SET

Po ustawieniu tego, funkcje takie jak TO_CHAR() sformatuje liczby zgodnie z en_US format.

Przykłady

Oto kilka przykładów pokazujących, jak te zmienne mogą wpływać na dane wyjściowe:

lc_monetary Zmienna

Oto przykład ustawienia lc_monetary zmienna:

SET lc_monetary = 'en_US';
SELECT CAST(123456.789 AS money);

Wynik:

$123,456.79

A tutaj używa innego języka:

SET lc_monetary = 'de_DE';
SELECT CAST(123456.789 AS money);

Wynik:

Eu123.456,79

lc_numeric Zmienna

Oto przykład ustawienia lc_numeric zmienna, a następnie formatowanie liczby za pomocą TO_CHAR() funkcja:

SET lc_numeric = 'en_US';
SELECT TO_CHAR(123456.789, 'fm999G999D99');

Wynik:

123,456.79

A tutaj używa innego języka:

SET lc_numeric = 'de_DE';
SELECT TO_CHAR(123456.789, 'fm999G999D99');

Wynik:

123.456,79

Sprawdź bieżące ustawienia

Możesz sprawdzić swoje bieżące ustawienia za pomocą SHOW polecenie.

Przykład:

SHOW lc_monetary;

Wynik:

en_US

Oraz:

SHOW lc_numeric;

Wynik:

de_DE

Przywróć wartości domyślne

Aby przywrócić ustawienia domyślne każdej zmiennej, możesz użyć następujących poleceń:

SET lc_monetary TO DEFAULT;
SHOW lc_monetary;

Wynik:

en_US.UTF-8

Oraz dla lc_numeric :

SET lc_numeric TO DEFAULT;
SHOW lc_numeric;

Wynik:

en_US.UTF-8

Lokalizacje dostępne w systemie i ich nazwy zależą od tego, co zostało dostarczone przez dostawcę systemu operacyjnego i co zostało zainstalowane. Więcej informacji można znaleźć w dokumentacji PostgreSQL na temat obsługi lokalizacji.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JOIN (WYBIERZ ... ) ue ON 1=1?

  2. Uruchamiaj zapytania PostgreSQL z wiersza poleceń

  3. Jak uzyskać min/max dwóch liczb całkowitych w Postgres/SQL?

  4. Jak szybko usunąć użytkownika z istniejącymi uprawnieniami

  5. Psql wyświetla wszystkie tabele