1. 基本数据类型:
PostgreSQL 支持多种基本数据类型,例如:
- 整数类型(integer、smallint、bigint):
CREATE TABLE example_table (
id serial PRIMARY KEY,
value_integer integer,
value_smallint smallint,
value_bigint bigint
);
- 浮点数类型(real、double precision):
CREATE TABLE example_table (
id serial PRIMARY KEY,
value_real real,
value_double precision
);
- 字符类型(char、varchar、text):
CREATE TABLE example_table (
id serial PRIMARY KEY,
value_char char(10),
value_varchar varchar(255),
value_text text
);
- 日期和时间类型(date、timestamp):
CREATE TABLE example_table (
id serial PRIMARY KEY,
value_date date,
value_timestamp timestamp
);
2. 数组类型:
PostgreSQL 支持数组,可以将多个相同类型的值存储在一个字段中。
CREATE TABLE example_table (
id serial PRIMARY KEY,
values_array integer[]
);
3. 复合类型:
复合类型允许在一个字段中存储多个子字段的集合。
CREATE TYPE address AS (
street varchar(255),
city varchar(100),
zip_code varchar(20)
);
CREATE TABLE example_table (
id serial PRIMARY KEY,
address_info address
);
4. 特殊类型:
- JSON 和 JSONB 类型:
CREATE TABLE example_table (
id serial PRIMARY KEY,
data_json json,
data_jsonb jsonb
);
- HSTORE 类型:
CREATE TABLE example_table (
id serial PRIMARY KEY,
data_hstore hstore
);
5. 枚举类型:
枚举类型允许定义一组命名的常量,然后将这些常量用作字段的值。
CREATE TYPE status AS ENUM ('active', 'inactive', 'pending');
CREATE TABLE example_table (
id serial PRIMARY KEY,
status_column status
);
这只是 PostgreSQL 中值存储方式的一些例子。你可以根据需要选择适当的数据类型,并根据实际情况使用数组、复合类型、JSON 等。值的存储方式会影响数据库的性能和查询灵活性,因此需要根据具体情况进行权衡。
转载请注明出处:http://www.zyzy.cn/article/detail/8202/PostgreSQL