sql
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseSQL
SQL
Standard language for storing, manipulating and retrieving data in databases.
标准的数据库数据存储、操作与检索语言。
When to Use
适用场景
- Relational data modeling
- Complex queries and aggregations
- Data integrity enforcement (ACID)
- Standardized data access
- 关系型数据建模
- 复杂查询与聚合操作
- 数据完整性保障(ACID)
- 标准化数据访问
Quick Start
快速入门
sql
-- Create Table
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100) UNIQUE
);
-- Insert Data
INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');
-- Query Data
SELECT * FROM users WHERE name = 'Alice';sql
-- 创建表
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100) UNIQUE
);
-- 插入数据
INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');
-- 查询数据
SELECT * FROM users WHERE name = 'Alice';Core Concepts
核心概念
DDL (Data Definition Language)
DDL(数据定义语言)
Commands to define database schemas (CREATE, ALTER, DROP).
用于定义数据库模式的命令(CREATE、ALTER、DROP)。
DML (Data Manipulation Language)
DML(数据操作语言)
Commands to manipulate data (SELECT, INSERT, UPDATE, DELETE).
用于操作数据的命令(SELECT、INSERT、UPDATE、DELETE)。
Joins
表连接
Combining rows from two or more tables based on a related column.
- INNER JOIN: Matches in both tables.
- LEFT JOIN: All from left, matches from right.
基于关联列合并两个或多个表中的行。
- INNER JOIN:匹配两个表中都存在的记录。
- LEFT JOIN:包含左表所有记录,以及右表中匹配的记录。
Best Practices
最佳实践
Do:
- Use parameterized queries (prevent SQL Injection)
- Index columns used in WHERE and JOIN clauses
- Use transactions for atomic operations
Don't:
- Use in production (fetch only what you need)
SELECT * - Store logic in triggers if possible (hard to debug)
- Ignore execution plans for slow queries
建议:
- 使用参数化查询(防止SQL注入)
- 为WHERE和JOIN子句中使用的列创建索引
- 对原子操作使用事务
不建议:
- 在生产环境中使用(仅获取所需数据)
SELECT * - 尽可能避免在触发器中存储逻辑(调试难度大)
- 忽略慢查询的执行计划