当前位置:首页 > 技术文章 > 正文内容

SQL 从入门到精通:全面掌握数据库操作



学习 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';


扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/4347.html

标签: sql怎么学
分享给朋友:

“SQL 从入门到精通:全面掌握数据库操作” 的相关文章

三年前端还不会配置Nginx?刷完这篇就够了

一口气看完,比自学强十倍!什么是NginxNginx是一个开源的高性能HTTP和反向代理服务器。它可以用于处理静态资源、负载均衡、反向代理和缓存等任务。Nginx被广泛用于构建高可用性、高性能的Web应用程序和网站。它具有低内存消耗、高并发能力和良好的稳定性,因此在互联网领域非常受欢迎。为什么使用N...

高端Linux 脚本很有用,赶紧学起来!

Linux 脚本?准确的说叫 Linux Shell 脚本,Shell 脚本是一种被设计用来运行命令行解释器,他是 Linux 系统的一大特色之一。命令行是 Linux 系统中一种非常重要的交互方式,而它的实现基于 Linux 内核和 Shell 程序,为用户提供了强大和灵活的操作方式。使用 Lin...

一文教会你如何使用 iLogtail SPL 处理日志

作者:阿柄随着流式处理的发展,出现了越来越多的工具和语言,使得数据处理变得更加高效、灵活和易用。在此背景下,SLS 推出了 SPL(SLS Processing Language) 语法,以此统一查询、端上处理、数据加工等的语法,保证了数据处理的灵活性。iLogtail 作为日志、时序数据采集器,在...

nginx+spring boot 微服务实现负载均衡

环境准备项目 JDK1.8 以上版本准备好 nginx 环境nginx 配置nginx 的配置文件在/usr/local/nginx/conf 目录下,配置文件 nginx.conf配置信息如下:upstream web_app { server 192.168.226.150:8089 ma...

Linux Shell

基本语法第一行第一行必须是 #!/bin/sh。它不是注释,#!/bin/sh 是对shell的声明,说明你所用的是那种类型的shell及其路径所在如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell如果脚本被编写为在Kornshell...

宝塔面板——永久免费的服务器运维面板

宝塔面板是什么?宝塔面板,简单好用的服务器运维面板。官称永久免费。Linux版请确保纯净系统安装(支持CentOS、Ubuntu、Debian、Fedora、deepin),Web端管理,一键创建网站、FTP、数据库、SSL;安全管理,计划任务,文件管理,PHP多版本共存及切换;自带LNMP与LAM...