网站首页 > 精选文章 正文
学习 SQL(Structured Query Language)是掌握数据库操作的关键步骤。SQL 是一种用于管理和处理关系型数据库的标准语言,广泛应用于数据检索、插入、更新和删除等操作。以下是一些 SQL 基础语法的学习内容,并附有示例。
1. 基本结构
SQL 语句通常以关键字开头,如 SELECT, INSERT, UPDATE, DELETE 等。每个语句以分号 ; 结束。
sql
深色版本
1-- 查询所有用户
2SELECT * FROM users;2. 数据库操作
创建数据库
sql
深色版本
1CREATE DATABASE mydatabase;选择数据库
sql
深色版本
1USE mydatabase;删除数据库
sql
深色版本
1DROP DATABASE mydatabase;3. 表操作
创建表
sql
深色版本
1CREATE TABLE users (
2    id INT AUTO_INCREMENT PRIMARY KEY,
3    username VARCHAR(50) NOT NULL,
4    email VARCHAR(100) UNIQUE,
5    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
6);查看表结构
sql
深色版本
1DESCRIBE users;修改表
- 添加列
 
sql
深色版本
1ALTER TABLE users ADD COLUMN age INT;- 删除列
 
sql
深色版本
1ALTER TABLE users DROP COLUMN age;- 修改列
 
sql
深色版本
1ALTER TABLE users MODIFY COLUMN email VARCHAR(150);删除表
sql
深色版本
1DROP TABLE users;4. 数据操作
插入数据
sql
深色版本
1INSERT INTO users (username, email) VALUES ('john_doe', 'john@example.com');查询数据
- 基本查询
 
sql
深色版本
1SELECT * FROM users;- 条件查询
 
sql
深色版本
1SELECT * FROM users WHERE username = 'john_doe';- 排序
 
sql
深色版本
1SELECT * FROM users ORDER BY created_at DESC;- 分页
 
sql
深色版本
1SELECT * FROM users LIMIT 10 OFFSET 0; -- 获取前10条记录- 聚合函数
 
sql
深色版本
1SELECT COUNT(*) AS user_count FROM users;- 分组
 
sql
深色版本
1SELECT age, COUNT(*) AS user_count FROM users GROUP BY age;- 连接
 
sql
深色版本
1SELECT users.username, orders.order_id 
2FROM users 
3JOIN orders ON users.id = orders.user_id;更新数据
sql
深色版本
1UPDATE users SET email = 'john_new@example.com' WHERE username = 'john_doe';删除数据
sql
深色版本
1DELETE FROM users WHERE username = 'john_doe';5. 索引
创建索引
sql
深色版本
1CREATE INDEX idx_email ON users(email);删除索引
sql
深色版本
1DROP INDEX idx_email ON users;6. 事务
开始事务
sql
深色版本
1START TRANSACTION;提交事务
sql
深色版本
1COMMIT;回滚事务
sql
深色版本
1ROLLBACK;7. 视图
创建视图
sql
深色版本
1CREATE VIEW active_users AS
2SELECT * FROM users WHERE last_login > NOW() - INTERVAL 30 DAY;查询视图
sql
深色版本
1SELECT * FROM active_users;删除视图
sql
深色版本
1DROP VIEW active_users;8. 存储过程
创建存储过程
sql
深色版本
1DELIMITER //
2
3CREATE PROCEDURE GetUsersByAge(IN min_age INT, IN max_age INT)
4BEGIN
5    SELECT * FROM users WHERE age BETWEEN min_age AND max_age;
6END //
7
8DELIMITER ;调用存储过程
sql
深色版本
1CALL GetUsersByAge(18, 30);9. 函数
创建函数
sql
深色版本
1DELIMITER //
2
3CREATE FUNCTION GetUserNameById(user_id INT) RETURNS VARCHAR(50)
4BEGIN
5    DECLARE username VARCHAR(50);
6    SELECT username INTO username FROM users WHERE id = user_id;
7    RETURN username;
8END //
9
10DELIMITER ;调用函数
sql
深色版本
1SELECT GetUserNameById(1);10. 用户权限管理
创建用户
sql
深色版本
1CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';授予权限
sql
深色版本
1GRANT ALL PRIVILEGES ON mydatabase.* TO 'newuser'@'localhost';撤销权限
sql
深色版本
1REVOKE ALL PRIVILEGES ON mydatabase.* FROM 'newuser'@'localhost';删除用户
sql
深色版本
1DROP USER 'newuser'@'localhost';
猜你喜欢
- 2025-07-23 MySQL之数据库的设计(mysql数据库设计与应用)
 - 2025-07-23 MySQL--索引(mysql索引有哪几种)
 - 2025-07-23 系统整容纪:用知识来"武装"自己~认识MySQL的锁与事务
 - 2025-07-23 MySQL innodb的B+树到底长什么样,为什么MySQL要这样设计?
 - 2025-07-23 软网推荐:超强密码的产生与记忆(网络密码解锁软件)
 - 2025-07-23 Go语言数据库编程:GORM 的基本使用
 - 2025-07-23 数据库——主键和唯一键的区别(mysql简述主键与唯一约束的区别)
 - 2025-07-23 系统性能分析从入门到进阶(系统性能分析怎么写)
 - 2025-07-23 从零开始一个完整的全栈项目(2) - 创建数据库表
 - 2025-07-23 MySQL数据库之数据库约束,一文带你了解
 
- 最近发表
 
- 标签列表
 - 
- 向日葵无法连接服务器 (32)
 - git.exe (33)
 - vscode更新 (34)
 - dev c (33)
 - git ignore命令 (32)
 - gitlab提交代码步骤 (37)
 - java update (36)
 - vue debug (34)
 - vue blur (32)
 - vscode导入vue项目 (33)
 - vue chart (32)
 - vue cms (32)
 - 大雅数据库 (34)
 - 技术迭代 (37)
 - 同一局域网 (33)
 - github拒绝连接 (33)
 - vscode php插件 (32)
 - vue注释快捷键 (32)
 - linux ssr (33)
 - 微端服务器 (35)
 - 导航猫 (32)
 - 获取当前时间年月日 (33)
 - stp软件 (33)
 - http下载文件 (33)
 - linux bt下载 (33)
 
 
