mysql语句大全及用法

常用的MySQL语句和简要用法,以帮助你开始学习和使用MySQL。

连接数据库

sql 复制代码
mysql -u username -p

在命令行中使用以上命令来连接到MySQL数据库服务器。username 是你的MySQL用户名,执行后会提示输入密码。

显示数据库

sql 复制代码
SHOW DATABASES;

列出数据库服务器上的所有数据库。

选择数据库

sql 复制代码
USE database_name;

选择要操作的特定数据库。

显示数据表

sql 复制代码
SHOW TABLES;

显示当前数据库中的所有表。

显示表结构

sql 复制代码
DESCRIBE table_name;

显示数据表的列信息。

创建数据库

sql 复制代码
CREATE DATABASE database_name;

创建一个新的数据库。

删除数据库

sql 复制代码
DROP DATABASE database_name;

删除一个数据库。

创建表

sql 复制代码
CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
    ...
);

创建一个新表,指定列名和数据类型。

删除表

sql 复制代码
DROP TABLE table_name;

删除表。

插入数据

sql 复制代码
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);

向表中插入数据。

查询数据

sql 复制代码
SELECT column1, column2, ...
FROM table_name
WHERE condition
ORDER BY column ASC|DESC
LIMIT number;

选择表中的数据,可以使用WHERE子句进行条件过滤,ORDER BY子句进行排序,LIMIT子句限制返回的记录数。

更新数据

sql 复制代码
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;

更新表中的数据。

删除数据

sql 复制代码
DELETE FROM table_name WHERE condition;

从表中删除数据。

索引

sql 复制代码
-- 创建索引
CREATE INDEX index_name ON table_name (column1, column2, ...);

-- 删除索引
DROP INDEX index_name ON table_name;

创建或删除索引来优化查询。

用户和权限

sql 复制代码
-- 创建用户
CREATE USER 'username'@'host' IDENTIFIED BY 'password';

-- 授权
GRANT ALL PRIVILEGES ON database_name.table_name TO 'username'@'host';

-- 刷新权限
FLUSH PRIVILEGES;

-- 撤销权限
REVOKE ALL PRIVILEGES ON database_name.table_name FROM 'username'@'host';

-- 删除用户
DROP USER 'username'@'host';

用于管理用户和权限。

事务控制

sql 复制代码
-- 开始事务
START TRANSACTION;

-- 提交事务
COMMIT;

-- 回滚事务
ROLLBACK;

用于控制事务的开始、提交和回滚。

表连接

sql 复制代码
SELECT columns
FROM table1
INNER JOIN table2 ON table1.column_name = table2.column_name;

表连接用于结合两个或多个表中的行。

子查询

sql 复制代码
SELECT column_name [, column_name ]
FROM table1
WHERE column_name OPERATOR
    (SELECT column_name
     FROM table2
     WHERE condition);

子查询用于在另一个查询内部执行查询。

记住,这些只是MySQL中可用的许多SQL语句中的一部分。每个语句都可以根据需要进行高度定制,包括使用函数、更复杂的联结、子查询、视图、存储过程、触发器等。对于初学者来说,理解上述基本语句是一个良好的起点,随着经验的累积,你可以逐渐学习更复杂的功能和命令。

相关推荐
heartbeat..4 小时前
Spring AOP 全面详解(通俗易懂 + 核心知识点 + 完整案例)
java·数据库·spring·aop
麦聪聊数据6 小时前
MySQL并发与锁:从“防止超卖”到排查“死锁”
数据库·sql·mysql
AC赳赳老秦7 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
myzshare7 小时前
实战分享:我是如何用SSM框架开发出一个完整项目的
java·mysql·spring cloud·微信小程序
YMatrix 官方技术社区7 小时前
YMatrix 存储引擎解密:MARS3 存储引擎如何超越传统行存、列存实现“时序+分析“场景性能大幅提升?
开发语言·数据库·时序数据库·数据库架构·智慧工厂·存储引擎·ymatrix
辞砚技术录8 小时前
MySQL面试题——索引2nd
数据库·mysql·面试
linweidong8 小时前
C++thread pool(线程池)设计应关注哪些扩展性问题?
java·数据库·c++
墨笔之风9 小时前
java后端根据双数据源进行不同的接口查询
java·开发语言·mysql·postgres
欧亚学术9 小时前
突发!刚刚新增17本期刊被剔除!
数据库·论文·sci·期刊·博士·scopus·发表
黑白极客10 小时前
怎么给字符串字段加索引?日志系统 一条更新语句是怎么执行的
java·数据库·sql·mysql·引擎