本文介紹如何使用polar_utility外掛程式。
建立或刪除外掛程式
建立外掛程式文法如下:
CREATE extension polar_utility;
刪除外掛程式文法如下:
DROP extension polar_utility;
準備測試資料
建立一個名為polar_test_interval_func
表,並在表中插入資料。樣本如下:
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)
將interval類型轉換為天數對應的整數。
樣本如下:
SELECT to_number(a) FROM polar_test_interval_func;
返回樣本如下:
to_number
-------------------------
0.04583333333333333333
2.1000000000000000
93.0000000000000000
1551.0000000000000000
-1.00000000000000000000
3.0000000000000000
(6 rows)
trunc(interval)
將interval轉換為天數對應的整數,並對其結果保留整數部分。
樣本如下:
SELECT trunc(a) FROM polar_test_interval_func;
返回樣本如下:
trunc
-------
0
2
93
1551
-1
3
(6 rows)
abs(interval)
將interval轉換為天數對應的整數,並對結果取絕對值。
樣本如下:
SELECT abs(a) FROM polar_test_interval_func;
返回樣本如下:
abs
------------------------
0.04583333333333333333
2.1000000000000000
93.0000000000000000
1551.0000000000000000
1.00000000000000000000
3.0000000000000000
(6 rows)
to_char(interval)
將interval轉換為天數對應的整數,並將結果轉換為字串類型。
樣本如下:
SELECT to_char(a) FROM polar_test_interval_func;
返回樣本如下:
to_char
-------------------------
0.04583333333333333333
2.1000000000000000
93.0000000000000000
1551.0000000000000000
-1.00000000000000000000
3.0000000000000000
(6 rows)
to_date(numeric, character varying)
將numeric類型轉換為指定格式的date類型。
樣本如下:
SELECT to_date('20200811','yyyymmddhh24miss');
返回樣本如下:
to_date
--------------------------
Tue Aug 11 00:00:00 2020
(1 row)
to_date(timestamp without time zone)
返回date類型。
樣本如下:
SELECT to_date('11-AUG-20 03:16:09.089308'::timestamp);
返回樣本如下:
to_date
---------------------------------
Tue Aug 11 03:16:09.089308 2020
(1 row)
mod(text, text)
支援text類型的mod操作,預設將text類型轉換為numeric模數。
樣本如下:
SELECT mod('10'::text, '2'::text);
返回樣本如下:
mod
-----
0
(1 row)
convert(text, text)
將字串轉換為指定編碼的字串返回。
樣本如下:
SELECT convert('RAM is the new disk.', 'utf8');
返回樣本如下:
convert
----------------------
RAM is the new disk.
(1 row)