DDL 与 DML
数据定义语言(DDL)
DDL 用于定义和管理数据库中的结构性对象,如表、视图、索引等。
常用 DDL 操作
创建数据库
CREATE DATABASE mydb;
`
创建表
CREATE TABLE employees (
id SERIAL PRIMARY KEY,
name TEXT NOT NULL,
hired_at DATE,
salary NUMERIC(10, 2)
);
修改表结构
- 添加列:
ALTER TABLE employees ADD COLUMN department TEXT;
- 修改列类型:
ALTER TABLE employees ALTER COLUMN salary TYPE DECIMAL(15, 2);
- 删除列:
ALTER TABLE employees DROP COLUMN department;
删除对象
- 删除表:
DROP TABLE employees;
- 删除数据库:
DROP DATABASE mydb;
常用数据类型
- ENUM:自定义枚举类型
- ARRAY:数组类型
- JSONB:二进制 JSON 类型,支持高效查询
数据操作语言(DML)
DML 用于处理数据库中的数据,包括插入、更新、删除和查询操作。
插入数据
INSERT INTO employees (name, hired_at, salary)
VALUES ('John Doe', '2024-04-01', 50000);
查询数据
SELECT * FROM employees;
SELECT name, salary FROM employees WHERE salary > 40000;
条件查询
SELECT * FROM employees WHERE department = 'Sales';
排序
SELECT * FROM employees ORDER BY salary DESC;
聚合函数
- COUNT:计数
- AVG:平均值
- SUM:求和
- MAX / MIN:最大/最小值
SELECT department, AVG(salary) FROM employees GROUP BY department;
连接查询
SELECT employees.name, departments.name
FROM employees
JOIN departments ON employees.department_id = departments.id;
更新数据
UPDATE employees SET salary = 55000 WHERE id = 1;
删除数据
DELETE FROM employees WHERE id = 1;
小结
DDL 和 DML 是 PostgreSQL 中最基本且最常用的 SQL 操作。通过 DDL 定义数据库结构,再使用 DML 对数据进行管理,完成各类应用场景的需求。
相关内容
- CTE 与递归 介绍 PostgreSQL 中的公用表表达式 (CTE) 和递归查询,帮助开发者处理复杂的查询场景,简化查询结构和逻辑。
- JSON 操作 介绍 PostgreSQL 中的 JSON 操作,帮助开发者在数据库中高效存储、查询和操作 JSON 数据类型。
- 窗口函数 介绍 PostgreSQL 中的窗口函数,帮助开发者在查询中进行基于窗口的计算,如排名、聚合、分区等操作,以提升查询的灵活性与复杂性。
- 默认值与检查 介绍 PostgreSQL 中的默认值与检查约束,帮助开发者理解如何确保列值的默认填充和对数据进行有效性检查。
- 外键与级联 介绍 PostgreSQL 中的外键与级联操作,帮助开发者理解如何维护表之间的关系,并确保数据一致性。
- 主键与唯一约束 介绍 PostgreSQL 中的主键与唯一约束,帮助开发者理解如何确保数据的唯一性和完整性,避免数据重复。