一文吃透 SQL 语法

SQL(结构化查询语言)是一种用于管理关系型数据库的编程语言。它允许用户通过查询、更新、插入和删除数据来操作数据库。为了更好地理解 SQL,我们将从基本语法、数据定义、数据操控和数据查询几个方面进行阐述。

一、基本语法

SQL 语法的格式一般由关键词、标识符和句子组成。关键词是 SQL 语言的保留字,例如 SELECTINSERTUPDATEDELETE 等。标识符则是用户自定义的名称,包括数据库名、表名和列名等。句子是由这些关键词和标识符按照一定规则组合而成的。

二、数据定义语言(DDL)

DDL 主要用于定义和管理数据库结构,包括创建、修改和删除数据库和表。

  1. 创建数据库 sql CREATE DATABASE example_db;

  2. 创建表 sql CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL, email VARCHAR(100) NOT NULL UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );

  3. 修改表 sql ALTER TABLE users ADD COLUMN last_login TIMESTAMP;

  4. 删除表 sql DROP TABLE users;

三、数据操控语言(DML)

DML 主要用于操作数据库中的数据,包括插入、更新和删除数据。

  1. 插入数据 sql INSERT INTO users (username, email) VALUES ('alice', 'alice@example.com');

  2. 更新数据 sql UPDATE users SET last_login = NOW() WHERE username = 'alice';

  3. 删除数据 sql DELETE FROM users WHERE username = 'alice';

四、数据查询语言(DQL)

DQL 主要用于从数据库中查询数据,最常见的就是 SELECT 语句。

  1. 查询所有数据 sql SELECT * FROM users;

  2. 查询特定列 sql SELECT username, email FROM users;

  3. 条件查询 sql SELECT * FROM users WHERE email LIKE '%@example.com';

  4. 排序查询 sql SELECT * FROM users ORDER BY created_at DESC;

  5. 限制查询结果 sql SELECT * FROM users LIMIT 10 OFFSET 5;

五、聚合函数与分组

聚合函数可以对数据进行统计分析,如 COUNTSUMAVGMAXMIN

  1. 统计用户总数 sql SELECT COUNT(*) FROM users;

  2. 分组查询 sql SELECT email, COUNT(*) AS count FROM users GROUP BY email HAVING count > 1;

六、连接查询

多个表之间的连接查询非常常见,主要有内连接、外连接和交叉连接。

  1. 内连接 sql SELECT users.username, orders.amount FROM users INNER JOIN orders ON users.id = orders.user_id;

七、子查询

子查询是嵌套在其他 SQL 查询中的查询,可以在 SELECTFROMWHERE 等语句中使用。

SELECT username FROM users WHERE id IN (SELECT user_id FROM orders WHERE amount > 100);

八、总结

SQL 是一门功能强大的语言,适用于各种数据操作。掌握 SQL 的基本语法和常用命令,可以为数据库的管理和数据分析提供强有力的支持。通过上面的示例,我们可以看到,SQL 的灵活性和强大功能使其成为数据管理和分析的核心工具。在实际应用中,结合具体情境灵活使用 SQL,可以更高效地处理数据,提升工作效率。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部