SQL
SQL(结构化查询语言)是关系数据库的标准查询语言,用声明式语法定义与操作数据(DDL/DML/DQL/DCL)。
用途
为关系数据库提供统一、声明式的数据操作语言,使应用与存储解耦。
机制
声明式:描述"要什么"而非"怎么做",优化器生成执行计划。子语言:DDL(CREATE/ALTER/DROP)、DML(INSERT/UPDATE/DELETE)、DQL(SELECT)、DCL(GRANT/REVOKE)。支持子查询、JOIN、聚合、窗口函数、CTE。
用例
- 关系数据库查询与操作
- 数据分析与报表
- ETL 数据转换
- ORM 底层生成
示例
- 输入
SELECT name FROM users WHERE age > 18输出Names of adult usersDeclarative query
常见错误
- Concatenating SQL strings causes injection
- Use parameterized queries