PostgreSQL支持3種字符串類型,分別是character varying(n)、character(n)和text,character varying(n)能夠寫成varchar(n),character(n)能夠寫成char(n),最大長度1GB,text最大長度無限制。n是實際字符數量。函數
大部分狀況下,推薦使用text和varchar(n)。post
PostgreSQL支持一種二進制類型bytea。編碼
二進制數據有圖片(JPG、PNG等)、音樂(MP三、WMA等)格式文件,和字符串文件區別在於文本文件須要複合文件編碼和儲存可見字符,二進制文件沒有相似限制,字符串適合儲存文本文件。code
---字符串練習 postgres=# create table testtext(testtext char(2),testvarchar varchar(3), testchar text); CREATE TABLE postgres=# postgres=# postgres=# insert into testtext values('1','111','111'),('0','000','011777'); INSERT 0 2 postgres=# select * from testtext; testtext | testvarchar | testchar ----------+-------------+---------- 1 | 111 | 111 0 | 000 | 011777 (2 行記錄) postgres=#
插入長度超過預約值是,提示錯誤信息。圖片
下面演示部分常見字符串函數。字符串
---字符串拼接 postgres=# select 'N'||'O'; ?column? ---------- NO (1 行記錄) postgres=# select 'Hello'||' '||'World'; ?column? ------------- Hello World (1 行記錄) postgres=#
根據以上代碼字符串能夠拼接2個以上字符串。it
---1Byte=8Bite postgres=# select bit_length('A'); bit_length ------------ 8 (1 行記錄) postgres=#
檢查字符串byte長度。table
postgres=# select char_length('A'); char_length ------------- 1 (1 行記錄) postgres=# select char_length('Hello world.'); char_length ------------- 12 (1 行記錄) postgres=#
字符串轉換爲小寫。test
postgres=# select lower('Hello'); lower ------- hello (1 行記錄) postgres=# select lower('HI'); lower ------- hi (1 行記錄) postgres=#
字符串轉換爲大寫。select
postgres=# select upper('Hello'); upper ------- HELLO (1 行記錄) postgres=# select upper('Hi'); upper ------- HI (1 行記錄) postgres=#