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;  -- 查找订单中的最小金额
相关推荐
老纪的技术唠嗑局1 小时前
把 seekdb 塞进 iOS App:让混合检索嵌入手机
数据库
ClouGence2 小时前
开源数据库管理工具 CloudDM 新版本发布,支持 OpenSearch、IoTDB 数据源
数据库·开源
徐小黑ACG2 小时前
Redis-基础
数据库·redis·缓存
火山引擎开发者社区3 小时前
案例实践 | 让 Agent 读懂业务口径:ContextSearch 在广告数据查询中的实践
数据库
10年前端老司机4 小时前
Milvus 8种检索能力实践
数据库·python·agent
aiks_yuan4 小时前
MySQL 深分页 LIMIT 越翻越慢怎么办:300 万行实测 OFFSET、延迟关联和 keyset 的耗时差距(MySQL 8.2)
mysql
Decay__4 小时前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
freejackman4 小时前
【实战三】撕开脱敏盲区:深度解析 CASE WHEN 与窗口函数血缘
大数据·数据库·sql
codigger6 小时前
线上数据库连接池打满:从应急止损到架构根治的完整方案
数据库·sql·程序员
倔强的石头_7 小时前
集中式与分布式怎么选?我把手头11套系统重新过了一遍秤
数据库