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

Bagaimana cara menghilangkan titik di to_char jika angkanya bilangan bulat?

Anda dapat membuat fungsi:

create function to_ch (value numeric, format text)
returns text language sql as $$
    select rtrim(to_char(value, format), '.')
$$;

select to_ch(1.2, 'FM9999.9999'), to_ch(1, 'FM9999.9999'), to_ch(1.2212, 'FM9999.9999');

 to_ch | to_ch | to_ch  
-------+-------+--------
 1.2   | 1     | 1.2212
(1 row)

Varian dengan format yang telah ditentukan (mungkin lebih praktis):

create function to_ch4 (value numeric)
returns text language sql as $$
    select rtrim(to_char(value, 'FM9999.9999'), '.')
$$;

select to_ch4(1.2), to_ch4(1), to_ch4(1.2212);

 to_ch4 | to_ch4 | to_ch4 
--------+--------+--------
 1.2    | 1      | 1.2212
(1 row)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LIKE dengan % pada nama kolom

  2. Bagaimana Fungsi Degrees() Bekerja di PostgreSQL

  3. Bagaimana saya merumuskan kueri penyisipan ke database lain menggunakan postgres_fdw?

  4. Bagaimana cara memastikan entri dengan rentang waktu yang tidak tumpang tindih?

  5. Postgres - bagaimana cara mengembalikan baris dengan 0 hitungan untuk data yang hilang?