在 PostgreSQL 中,表(Table)是用于存储数据的基本结构,而索引(Index)则是一种用于加速数据库查询的数据结构。以下是关于 PostgreSQL 表和索引的一些基本信息:

表(Table):

1. 创建表: 使用 CREATE TABLE 语句可以创建表。例如:
    CREATE TABLE employees (
        employee_id SERIAL PRIMARY KEY,
        first_name VARCHAR(50),
        last_name VARCHAR(50),
        salary NUMERIC
    );

    上述语句创建了一个名为 employees 的表,包含了员工的信息,其中 employee_id 是主键。

2. 插入数据: 使用 INSERT INTO 语句可以向表中插入数据。例如:
    INSERT INTO employees (first_name, last_name, salary)
    VALUES ('John', 'Doe', 50000);

3. 查询数据: 使用 SELECT 语句可以从表中检索数据。例如:
    SELECT * FROM employees WHERE last_name = 'Doe';

索引(Index):

1. 创建索引: 使用 CREATE INDEX 语句可以在表的列上创建索引,以提高查询性能。例如:
    CREATE INDEX idx_last_name ON employees(last_name);

    上述语句创建了一个名为 idx_last_name 的索引,用于加速对 employees 表中 last_name 列的查询。

2. 主键和唯一约束: 主键自动创建唯一索引,确保表中的每一行都具有唯一的标识。唯一约束也会创建唯一索引,但允许空值。
    ALTER TABLE employees ADD PRIMARY KEY (employee_id);

3. 删除索引: 使用 DROP INDEX 语句可以删除索引。例如:
    DROP INDEX idx_last_name;

4. 查看索引: 使用 pg_indexes 系统视图或 \di 命令可以查看表上的索引信息。例如:
    SELECT * FROM pg_indexes WHERE tablename = 'employees';

这些是 PostgreSQL 中表和索引的基本概念和操作。根据实际需求,你可以进一步探索更高级的表设计和索引优化策略。


转载请注明出处:http://www.zyzy.cn/article/detail/8219/PostgreSQL