PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Pola &Pengubah Template untuk Pemformatan Numerik di PostgreSQL

Halaman ini berisi daftar lengkap pola template dan pengubah pola template yang dapat digunakan saat memformat angka di PostgreSQL.

Pola Template

Tabel berikut mencantumkan semua pola template yang dapat digunakan untuk pemformatan numerik di Postgres.

Pola Deskripsi
9 Posisi digit (dapat diturunkan jika tidak signifikan). Jika digitnya adalah nol di depan maka akan diganti dengan spasi. Jika itu nol dan mode pengisian ditentukan (yaitu FM ) maka akan dihapus.
0 Posisi digit (tidak akan di-drop, meskipun tidak signifikan). Artinya, posisi digit akan selalu tercetak, meskipun mengandung nol di depan/di belakang.
. (titik) Titik desimal. Mengabaikan lokal.
, (koma) Pemisah grup (ribuan). Mengabaikan lokal.
PR Nilai negatif dalam kurung sudut.
S Tanda berlabuh ke nomor (menggunakan lokal). Jika S muncul di sebelah kiri dari satu atau beberapa 9 s, tanda akan ditambatkan ke nomor tersebut.
L Simbol mata uang (menggunakan lokal).
D Titik desimal (menggunakan lokal).
G Pemisah grup (menggunakan lokal).
MI Tanda minus pada posisi yang ditentukan (jika angka <0). Tidak terikat pada nomor tersebut.
PL Tanda plus di posisi yang ditentukan (jika angka> 0). Tidak terpaku pada nomor. Ini adalah ekstensi Postgres.
SG Tanda plus/minus di posisi yang ditentukan. Tidak terpaku pada nomor. Ini adalah ekstensi Postgres.
RN Angka Romawi (masukan antara 1 dan 3999).
TH atau th Sufiks bilangan urut. Ini tidak mengonversi nilai kurang dari nol dan tidak mengonversi bilangan pecahan. Ini adalah ekstensi PostgreSQL.
V Menggeser jumlah digit yang ditentukan. Saat digunakan dengan to_char() , ini mengalikan nilai input dengan 10^n , di mana n adalah jumlah digit setelah V . Saat digunakan dengan to_number() , itu membagi dengan cara yang serupa. Keduanya to_char() dan to_number() tidak mendukung penggunaan V digabungkan dengan titik desimal (mis., 99.9V99 tidak diperbolehkan).
EEEE Eksponen untuk notasi ilmiah. Tidak dapat digunakan dalam kombinasi dengan pola pemformatan atau pengubah apa pun selain pola angka dan titik desimal, dan harus berada di akhir string format (mis., 9.99EEEE adalah pola yang valid).

Catatan:

  • Keduanya 0 dan 9 setara bila digunakan dengan to_number() fungsi.
  • Saat menggunakan to_number() fungsi, jika pola template non-data seperti L atau TH digunakan, jumlah karakter input yang sesuai akan dilewati, apakah cocok atau tidak dengan pola template, kecuali jika karakter tersebut adalah karakter data (yaitu, angka, tanda, titik desimal, atau koma). Misalnya, TH akan melewatkan dua karakter non-data.

Pengubah Pola Template

Pengubah berikut dapat diterapkan pada pola template di atas untuk mengubah hasilnya.

Pengubah Deskripsi
FM awalan Mode pengisian (menekan nol yang tertinggal dan mengisi kosong).
TH akhiran Sufiks nomor urut huruf besar. Tidak mengonversi nilai kurang dari nol dan tidak mengonversi bilangan pecahan. Ini adalah ekstensi Postgres.
th akhiran Sufiks nomor urut huruf kecil. Tidak mengonversi nilai kurang dari nol dan tidak mengonversi bilangan pecahan. Ini adalah ekstensi Postgres.

Perhatikan bahwa yang pertama ditambahkan sebagai awalan pada pola templat dan dua lainnya ditambahkan sebagai akhiran.

Contoh

Berikut adalah contoh singkat yang menyertakan pola template dan pengubah.

SELECT to_char(1, '9th');

Hasil:

1st

Dalam hal ini, 9 adalah untuk nomor (1 ), dan th digunakan untuk menambahkan indikator ordinal (dalam hal ini, st ).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat diagram ER di pgAdmin

  2. Bagaimana cara menghitung rata-rata pergerakan eksponensial pada postgres?

  3. Bandingkan array untuk kesetaraan, abaikan urutan elemen

  4. Bagaimana cara menggunakan beberapa pernyataan WITH dalam satu kueri PostgreSQL?

  5. postgresql COUNT(DISTINCT ...) sangat lambat