常用資料型別
資料型別 說明
布林型別 boolean true/'1'/'yes' false/'0'/'no'
數值型別 smallint 兩位元組
int 4 位元組 bigint 8 位元組 double/real 浮點型 money 貨幣(兩位小數 | | 字元型別 | varchar(n 幾位數)/char/text | | 二進位制 | bytea | | 位串型別 | 一串 0、1 bit(n)/bit varying(n) | | 日期和時間 | data/time/timestamp | | 列舉型別 | create type enum_name as enum ('apple','banana'); create table table_name (id int, name enum_name); | | 幾何型別 | 點 point 直線 line 線段 lseg 路徑 path 多邊形 polygon 圓 cycle | | 網路地址 | cidr inet macaddr | | 陣列型別 | | | 複合型別 | | | xml 型別 | XML | | JSON | JSON | | range | 範圍 | | 物件識別符號型別 | oid 型別、regproc 型別、regclass 型別 | | 偽型別 | | | 其他 | UUID |
1.函式型別轉換
函式 CAST 型別轉換 select cast('5' as int),cast('20114-0717' as date); 雙冒號的方式 select '5'::int,'2014-07-17'::date;
2.布林型
and/or/not null 表示未知 is 運算子 unknown
3.小數
精確的小數型別 numeric、numeric(m,n)、numeric(m) numeric=decimal numeric(perision,scale) persion 精度,scale 標度 numeric(persion)=numeric(percision,0) 宣告標度,超過位數會四捨五入 宣告精度的,小數點左右加起來的位數,超過該精度會報錯 對於 numeric(3,3)因為精度和標度都是三位,因此,該數字只能小於 1 浮點數型別不精確的變精度數字型別 double;real
-
序列型別 serial
5.貨幣型別
lc_monetary 其中,en_US.UTF-8 美國;zh_CN.UTF-8 中國 -
位串型別
bit(n) bit varying(n) n 表示二進位制的位數 bit(n)必須等於該位數,否則會報錯 bit varying(n) 不能超過該位數,否則會報錯 bit 預設一位 -
日期和時間
-
列舉
create type type_name as enum('a','b','c',); 檢視列舉型別 \dT -
幾何型別
-
複合型別
篩選複合型的某個欄位 range '[a,b]' (a,b) [a,b) '[' ']' 包含該數 '(' ')' 不包含該數
11.陣列型別
int[ ]一維陣列 int[ ][ ] 二維陣列