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;  -- 查找订单中的最小金额
相关推荐
华仔啊20 小时前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
Hoffer_1 天前
MySQL 强制索引:USE/FORCE INDEX 用法与避坑
后端·mysql
Hoffer_1 天前
MySQL 索引核心操作:CREATE/DROP/SHOW
后端·mysql
随风飘的云2 天前
MySQL的慢查询优化解决思路
数据库
IvorySQL2 天前
PostgreSQL 技术日报 (3月7日)|生态更新与内核性能讨论
数据库·postgresql·开源
赵渝强老师2 天前
【赵渝强老师】金仓数据库的数据文件
数据库·国产数据库·kingbase·金仓数据库
随逸1772 天前
《Milvus向量数据库从入门到实战,手把手搭建语义检索系统》
数据库
神秘的猪头2 天前
🚀 React 开发者进阶:RAG 核心——手把手带你玩转 Milvus 向量数据库
数据库·后端·llm
0xDevNull3 天前
MySQL索引进阶用法
后端·mysql
0xDevNull3 天前
MySQL索引用法
mysql