MySQL基础入门(一)

图片来自b站黑马程序员

数据库操作 DDL

查询:

1.查询所有的数据库
show databases;

2.查询当前的鹅数据库
select database;

创建

create database [if not exists] 数据库名 [default charset 字符集][collate 排序规则];

删除

drop database [if exists] 数据库名

使用

use 数据库名

DML 操作表

查询

1.查询当前数据库下所有的表名称
show tables;

2.查询表结构
desc 表名称

删除表

1.删除表
drop table 表名;

2.删除表时进行判断
drop table if exists 表名

查询表

show tables;

创建表

sql 复制代码
 create table 表名称(
	列名称 列类型 列类型约束,
	列名称 列类型 列类型约束,
	列名称 列类型 列类型约束
	.......
)

SQL中的类型

表的修改

1.修改表名
alter table 表名 rename to 表名

2.添加新的列
alter table 表名 add 列名 数据类型

3.修改某一列的数据类型
alter table 表名 modify 列名 新的数据类型 ;

4.修改列名和数据类型
alter table 表名 change 列名 新列名 新数据类型;

5.删除列
alter table 表名 drop 列名

对表中数据进行操作 DQL

查询

1.查询所有的数据
select * from 表名;

添加数据

1.给指定的列添加数据
insert into 表名(列名1,列名2,列名n) values (值1 ,值2)

2.给所有的列间数据
insert into 表名(所有列) values(所有给定的初始化值)

3.列明的列表可以省略
insert into 表名(所有列) values(所有给定的初始化值)

约束

约束就是指的对这个表中字段的限制,比如说非空约束,只要在字段类型的后面加上not null约束的话,这个表中就不可以插入该约束下仍为空子段的内容

条件查询

使用where关键字进行查询
select * from 表明 where 条件

举例
select * from students where name = "张三"

分组字段列表

数据分组:根据指定的列或表达式对数据进行分组,将具有相同值的数据归为一组。例如,可以根据商品类别将销售订单进行分组。

聚合计算:在每个分组内,可以对数据进行聚合计算,如求和、平均值、计数等。常见的聚合函数包括COUNT、SUM、AVG、MAX、MIN等。可以使用SELECT语句中的聚合函数来对分组后的数据进行计算。

过滤数据:可以使用HAVING子句对分组后的数据进行筛选,只保留满足特定条件的分组。HAVING子句通常与GROUP BY一起使用。

假设有一个包含订单信息的表orders,我们可以使用GROUP BY来按照顾客ID分组,并计算每个顾客的订单总金额:

sql 复制代码
SELECT customer_id, SUM(order_amount) 
FROM orders
GROUP BY customer_id;

聚合函数

在数据库中,聚合函数是用于对数据进行统计和计算的函数。聚合函数通常与GROUP BY语句一起使用,以对分组后的数据进行计算。

常见的聚合函数包括:

COUNT:用于计算行数。可以使用COUNT(*)来计算表中所有行的数量,或者使用COUNT(column_name)来计算指定列中非空值的数量。

SUM:用于计算某列的总和。

AVG:用于计算某列的平均值。

MAX:用于查找某列的最大值。

MIN:用于查找某列的最小值。

sql 复制代码
SELECT COUNT(*) FROM orders;  -- 计算orders表中的行数
SELECT COUNT(DISTINCT customer_id) FROM orders; -- 计算顾客数量
SELECT SUM(order_amount) FROM orders;  -- 计算订单总金额
SELECT AVG(order_amount) FROM orders;  -- 计算订单平均金额
SELECT MAX(order_amount) FROM orders;  -- 查找订单中的最大金额
SELECT MIN(order_amount) FROM orders;  -- 查找订单中的最小金额
相关推荐
唐青枫8 小时前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
吃糖的小孩8 小时前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
小满8789 小时前
5.Mysql事务隔离级别与锁机制
mysql
笃行3501 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3501 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3501 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
元Y亨H1 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
SelectDB2 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶2 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构