全部产品
Search
文档中心

PolarDB:polar_utility

更新时间:Jul 02, 2025

Topik ini menjelaskan cara menggunakan plug-in polar_utility.

Membuat atau menghapus plug-in polar_utility

Gunakan sintaksis berikut untuk membuat plug-in polar_utility:

CREATE extension polar_utility;

Gunakan sintaksis berikut untuk menghapus plug-in polar_utility:

DROP extension polar_utility;

Menyiapkan data uji

Buat tabel bernama polar_test_interval_func dan masukkan data ke dalam tabel. Berikut adalah contoh kode:

CREATE TABLE polar_test_interval_func(a interval);
INSERT INTO polar_test_interval_func
VALUES (interval '1.1 hour'),
       (interval '2.1 day'),
       (interval '3.1 month'),
       (interval '4.3 year'),
       (('11-AUG-20 03:16:09.089308'::timestamp - 1) - '11-AUG-20 03:16:09.089308'::timestamp),
       (('11-AUG-20 03:16:09.089308'::timestamp + 3) - '11-AUG-20 03:16:09.089308'::timestamp);

to_number(interval)

Fungsi ini mengonversi nilai interval menjadi nilai numerik yang mewakili jumlah hari yang sesuai.

Berikut adalah contoh kode:

SELECT to_number(a) FROM polar_test_interval_func;

Contoh tersebut mengembalikan hasil berikut:

        to_number
-------------------------
  0.04583333333333333333
      2.1000000000000000
     93.0000000000000000
   1551.0000000000000000
 -1.00000000000000000000
      3.0000000000000000
(6 baris)

trunc(interval)

Fungsi ini mengonversi nilai interval menjadi nilai numerik yang mewakili jumlah hari yang sesuai, hanya menyimpan bagian bilangan bulat dari angka yang dikembalikan.

Berikut adalah contoh kode:

SELECT trunc(a) FROM polar_test_interval_func;

Contoh tersebut mengembalikan hasil berikut:

 trunc
-------
     0
     2
    93
  1551
    -1
     3
(6 baris)

abs(interval)

Fungsi ini mengonversi nilai interval menjadi nilai numerik yang mewakili jumlah hari yang sesuai, lalu mengembalikan nilai absolut dari angka yang dihasilkan.

Berikut adalah contoh kode:

SELECT abs(a) FROM polar_test_interval_func;

Contoh tersebut mengembalikan hasil berikut:

          abs
------------------------
 0.04583333333333333333
     2.1000000000000000
    93.0000000000000000
  1551.0000000000000000
 1.00000000000000000000
     3.0000000000000000
(6 baris)

to_char(interval)

Fungsi ini mengonversi nilai interval menjadi nilai numerik yang mewakili jumlah hari yang sesuai, lalu mengonversi angka tersebut menjadi string.

Berikut adalah contoh kode:

SELECT to_char(a) FROM polar_test_interval_func;

Contoh tersebut mengembalikan hasil berikut:

         to_char
-------------------------
 0.04583333333333333333
 2.1000000000000000
 93.0000000000000000
 1551.0000000000000000
 -1.00000000000000000000
 3.0000000000000000
(6 baris)

to_date(numeric, character varying)

Fungsi ini mengonversi nilai numerik menjadi nilai tanggal dalam format yang ditentukan.

Berikut adalah contoh kode:

SELECT to_date('20200811','yyyymmddhh24miss');

Contoh tersebut mengembalikan hasil berikut:

         to_date
--------------------------
 Sel Aug 11 00:00:00 2020
(1 baris)

to_date(timestamp without time zone)

Fungsi ini mengembalikan nilai tanggal.

Berikut adalah contoh kode:

SELECT to_date('11-AUG-20 03:16:09.089308'::timestamp);

Contoh tersebut mengembalikan hasil berikut:

             to_date
---------------------------------
 Sel Aug 11 03:16:09.089308 2020
(1 baris)

mod(text, text)

Fungsi ini melakukan operasi modulo pada nilai teks. Secara default, fungsi ini mengonversi nilai teks menjadi nilai numerik sebelum melakukan operasi modulo.

Berikut adalah contoh kode:

SELECT mod('10'::text, '2'::text);

Contoh tersebut mengembalikan hasil berikut:

 mod
-----
   0
(1 baris)

convert(text, text)

Fungsi ini mengonversi nilai string menjadi string yang menggunakan pengkodean yang ditentukan.

Berikut adalah contoh kode:

SELECT convert('RAM is the new disk.', 'utf8');

Contoh tersebut mengembalikan hasil berikut:

       convert
----------------------
 RAM is the new disk.
(1 baris)