PostgreSQL SQL语言
PostgreSQL 是一个功能强大的开源关系型数据库管理系统(RDBMS),它支持标准的 SQL 语言,并提供了许多扩展功能。SQL(Structured Query Language)是用于与数据库交互的标准语言。无论你是查询数据、插入新记录,还是管理数据库结构,SQL 都是必不可少的工具。
本文将带你从基础开始,逐步学习 PostgreSQL 中的 SQL 语言,并通过实际案例帮助你理解其应用场景。
1. SQL 基础
SQL 语言主要分为以下几类:
- 数据查询语言(DQL):用于从数据库中检索数据,主要使用
SELECT
语句。 - 数据操作语言(DML):用于插入、更新和删除数据,包括
INSERT
、UPDATE
和DELETE
语句。 - 数据定义语言(DDL):用于定义和修改数据库结构,包括
CREATE
、ALTER
和DROP
语句。 - 数据控制语言(DCL):用于控制数据库访问权限,包括
GRANT
和REVOKE
语句。
1.1 数据查询语言(DQL)
SELECT
语句是 SQL 中最常用的语句之一,用于从数据库中检索数据。以下是一个简单的示例:
SELECT first_name, last_name FROM employees;
输出:
first_name | last_name |
---|---|
John | Doe |
Jane | Smith |
提示
你可以使用 *
来选择表中的所有列,例如:SELECT * FROM employees;
。但在实际开发中,建议明确指定所需的列,以提高查询效率。
1.2 数据操作语言(DML)
插入数据
使用 INSERT
语句可以向表中插入新记录:
INSERT INTO employees (first_name, last_name, hire_date)
VALUES ('Alice', 'Johnson', '2023-01-15');
更新数据
使用 UPDATE
语句可以更新表中的现有记录:
UPDATE employees
SET last_name = 'Brown'
WHERE first_name = 'Alice';
删除数据
使用 DELETE
语句可以从表中删除记录:
DELETE FROM employees
WHERE first_name = 'Alice';
警告
在执行 DELETE
或 UPDATE
语句时,务必使用 WHERE
子句,否则可能会意外删除或更新整个表中的数据。
1.3 数据定义语言(DDL)
创建表
使用 CREATE TABLE
语句可以创建一个新表:
CREATE TABLE departments (
department_id SERIAL PRIMARY KEY,
department_name VARCHAR(100) NOT NULL
);
修改表
使用 ALTER TABLE
语句可以修改现有表的结构:
ALTER TABLE employees
ADD COLUMN department_id INT;