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;  -- 查找订单中的最小金额
相关推荐
猫咪很可爱24 分钟前
MySQL 视图与只读用户:安全查询的完整实践指南
数据库·sql·mysql
l1t24 分钟前
测试用go语言执行脚本把数据保存到SQLite数据库
数据库·golang·sqlite
猫咪很可爱28 分钟前
MySQL 5.7 备份恢复后函数与存储过程丢失:原因分析与正确备份姿势
数据库·mysql·bug·shell
GottdesKrieges37 分钟前
Redis哨兵模式新建用户和修改口令
数据库·redis
二宝哥2 小时前
02.springboot项目对接国内模型实现对话聊天
数据库·人工智能·spring boot
秦时明月之君临天下2 小时前
MySQL purge 参数详解:innodb_purge_threads 与 innodb_purge_batch_size
数据库·mysql·1024程序员节
三垣网安2 小时前
某某大学心理健康教育平台弱口令及SQL注入漏洞
数据库·sql
打工仔折腾 AI2 小时前
AI Agent 工程化实战(二):5 分钟跑通 Deep Agent 并逐层拆解底层链路
java·数据库·人工智能·后端·python·langchain·ai agent 实战
Shaoshing3 小时前
MySQL视图
数据库
努力努力再努力wz3 小时前
【C++ 高阶系列】C++ 高性能网络编程:当 Reactor 遇见协程:从 epoll 回调到异步 MySQL,彻底打通任务挂起与恢复
网络·c++·mysql