MySQL数据库基础合集
MySQL数据库基础合集
目录
- MySQL数据库基础合集
- SQL关键字
- DDL关键字
- DML关键字
- DQL关键字
- DCL关键字
- 约束关键字
- SQL基础数据类型
- 整数类型
- 字符类型
- 浮点类型
- 时间类型
- 数据定义语言DDL
- 1.查看数据库
- 2.创建库
- 3.删除库
- 4.切换库
- 5.创建表
- 6.删除表
- 7.查看表
- 8.查看表属性
- 9.插入列
- 10.修改列
- 11.设置主键
- 12.设置外键并绑定主键
- 13.设置自增
- 14.删除列
- 15.重命名
- 16.设定默认值
- 17.添加备注
- 18.设置是否可为空
- 数据操纵语言DML
- 1.查表
- 2.插入数据
- 3.更新数据
- 4.删除数据
- 数据查询语言DQL
- 1.子查询
- 2.联表查询
- 3.GROUP BY
- 4.HAVING
- 5.分页查询
- 6.排序查询
- 数据控制语言DCL
- 1.事务
- 2.用户权限
- 2.用户权限
SQL关键字
DDL关键字
| DDL关键字 | 含义 |
|---|---|
| CREATE TABLE | 创建一个新的数据库表 |
| ALTER TABLE | 修改现有数据库表的结构或属性 |
| DROP TABLE | 删除数据库中的表 |
| MODIFY COLUMN | 修改列 |
| ADD COLUMN | 新增列 |
| CREATE INDEX | 创建索引 |
| DROP INDEX | 删除索引 |
| CREATE VIEW | 创建视图 |
| DROP VIEW | 删除视图 |
| CREATE FUNCTION | 创建函数 |
| ALTER FUNCTION | 修改已存在的函数 |
| DROP FUNCTION | 删除函数 |
| ENUM() | 枚举(多选多) |
| SET() | 集合(多选一) |
DML关键字
| DML关键字 | 含义 |
|---|---|
| SELECT | 从数据库中检索数据 |
| INSERT INTO | 向数据库表中插入新的行或数据 |
| UPDATE | 更新数据库表中的现有行或数据 |
| DELETE FROM | 从数据库表中删除行或数据 |
DQL关键字
| DQL关键字 | 含义 |
|---|---|
| SELECT | SELECT 字段列表,查询检索的列或表达式,它指定了最终结果包含的列 |
| FROM | FROM 表名,指定了要查询的列表或视图,例FROM table_name |
| WHERE | WHERE 条件列表,筛选查询结果,通常是列(字段)的条件表达式,例:WHERE id = 10 |
| GROUP BY | GROUP BY 分组字段列表,根据一个或多个列对结果进行分组,但是通常需要满足聚合条件 |
| HAVING | HAVING 分组后的条件列表,用于在GROUP BY子句的结果上进行过滤筛选 |
| ORDER BY | ORDER BY 排序字段列表,用于按照一个或多个列对结果进行排序,它可以按升序(ASC)或降序(DESC)对查询结果进行排序 |
| LIMIT | LIMIT 分页参数,一般在语句的最后,用于限制查询结果的数量 |
| DQL执行顺序 | FROM -> WHERE -> GROUP BY -> HAVING ->SELECT -> ORDER BY -> LIMIT |
DCL关键字
| DCL关键字 | 含义 |
|---|---|
| GRANT | 授予用户或角色特定的权限 |
| REVOKE | 撤销用户或角色的权限 |
| COMMIT | 提交当前事务 |
| ROLLBACK | 回滚当前事务 |
| SAVEPOINT | 在事务中设置保存点 |
| SET | 设置会话级别的参数 |
约束关键字
| 约束关键字 | 含义 |
|---|---|
| DEFAULT | 默认约束:为列设置默认值 |
| AUTO_INCREMENT | 自增约束:自动递增生成唯一标识符 |
| UNIQUE | 唯一约束:唯一约束确保列中的值是唯一的,但允许为空值 |
| NOT NULL | 非空约束:非空约束要求列中的值不能为空 |
| CHECK | 检查约束:检查约束定义了对列值的条件限制 |
| PRIMARY KEY | 主键约束:主键必须是唯一且非空的,每个表只能有一个主键 |
| FOREIGN KEY | 外键约束:用于建立表与表之间的关联关系,确保引用的数据存在于其他表中的主键列中 |
| ZEROFILL | 填充约束:以0填充,int(4) ZEROFILL 赋值1结果= 0001 |
| UNSIGNED | 非负约束:只能存储非负整数类型 |
SQL基础数据类型
整数类型
| 类型 | 含义 |
|---|---|
| TINYINT | 占用1个字节,范围-128-127,无符号范围0-255 |
| SMALLINT | 占用2个字节,范围-32768-32767,无符号范围0-65535 |
| MEDIUMINT | 占用3个字节,范围-8388608-8388607,无符号范围0-16777215 |
| INT | 占用4个字节,范围-2147483648-2147483647,无符号范围0-4294967295 |
| BIGINT | 占用8个字节,范围-9223372036854775808-9223372036854775807,无符号范围0-18446744073709551615 |
字符类型
| 类型 | 含义 |
|---|---|
| CHAR | 默认长度为1,可指定长度,例如CHAR(10)为长度10 |
| VARCHAR | 默认长度为1,可指定长度,例如VARCHAR(32)为长度32 |
| TINYTEXT | 最多可容纳255个字符 |
| TEXT | 无固定长度限制,可以容纳更大的字符数量,最多可容纳65535个字符(约64KB) |
| MEDIUMTEXT | 最多容纳16777215个字符(约16MB) |
| LONGTEXT | 最多可容纳4294967295个字符(约4GB) |
| ENUM | 用于存储预定义的枚举值之一。需要定义可选的枚举值,例如ENUM('A', 'B', 'C') |
| SET | 用于存储从一个或多个预定义选项集合中选择的值。需要定义可选的集合,例如SET('option1', 'option2', 'option3') |
浮点类型
| 类型 | 含义 |
|---|---|
| FLOAT | 单精度浮点数,精度约为6-7位有效数字 |
| DOUBLE | 双精度浮点数,精度约为15-16位有效数字 |
| DECIMAL | 用于存储高精度的十进制数,精度由用户指定 |
时间类型
| 类型 | 含义 |
|---|---|
| DATE | 格式为’YYYY-MM-DD’ |
| TIME | 格式为’HH:MM:SS’ |
| DATETIME | 格式为’YYYY-MM-DD HH:MM:SS’ |
| TIMESTAMP | 类似于DATETIME,格式为’YYYY-MM-DD HH:MM:SS’,用DEFAULT将默认值设置为CURRENT_TIMESTAMP可以默认当前时间 |
| YEAR | 用于存储年份值,表示四位数的年份 |
数据定义语言DDL
主要分为
- CREAT:创建
- DROP:删除
- ALTER:修改
登录MySQL
mysql -uroot -p
Enter password: ****
1.查看数据库
show databases;

2.创建库
create database emp;

3.删除库
drop database users;

4.切换库
use emp;

5.创建表
create table emp(id int,name varchar(32),age int);

enum插入数据时只能是enum中包含的数据set插入数据时必须是set数据中的一个
create table emp(id int,name varchar(32),hobby enum('read','run','listen'), gender set('male','female'));
6.删除表
注意要先use选择数据库
drop table emp;

7.查看表
show tables;

8.查看表属性
desc emp;

9.插入列
alter table emp add(sex varchar(2));


10.修改列
必须是当前表中存在的属性
alter table emp modify column name varchar(24);

11.设置主键
修改
alter table emp modify column id int primary key;
新建
create table emp1(id int primary key);

12.设置外键并绑定主键
表1
create table dep (id int primary key auto_increment,name varchar(32) comment'部门名');
表2
create table emp (id int primary key auto_increment,name varchar(32) comment'员工名',dep_id int, foreign key(dep_id) references dep(id));
- 当外键表2试图添加表1主键中不存在的数据时便会报错

- 当表1企图删除表2所在的行时也会报错(修改同理)

13.设置自增
alter table emp modify column id int auto_increment;

14.删除列
alter table emp drop column sex;

15.重命名
RENAME
rename table emp to stu;
16.设定默认值
DEFAULT
create table emp3(id int,name varchar(32),age varchar(3) default "男");
17.添加备注
COMMENT
为表添加备注:
create table emp4(id int,name varchar(32)) COMMENT '员工表';
为字段添加备注:
create table emp4(id int COMMENT '员工编号',name varchar(32) COMMENT '员工姓名');
ALTER table emp4 modify column name varchar(32) COMMENT '员工名';
18.设置是否可为空
默认情况都是可以为空
NULL:可以为空
create table emp4(id int COMMENT '员工编号',name varchar(32) NULL COMMENT '员工姓名');
NOT NULL:不可为空
create table emp4(id int COMMENT '员工编号',name varchar(32) NOT NULL COMMENT '员工姓名');
数据操纵语言DML
- SELECT:查表,SELECT在官方文档中隶属于DML,但是我们一般将其当做DQL操作
- INSERT:插入数据
- UPDATE:更新数据
- DELETE:删除数据
1.查表
查表之前首先要选择库use database_name
查看emp表全部列
select * from emp5;
查看name字段
select name from emp5

2.插入数据
insert into 表 (列名1,列名2,列名3...) values (值1,值2,值3...);
insert into emp5(name) value("李四");
3.更新数据
update emp5 set name="王五" where id=1;

4.删除数据
delete from emp5 where id=4;

删除表中所有数据
delete from emp5 ;
或者
truncate emp5;

数据查询语言DQL
1.子查询
- 将一个查询语句的结果当做另外一个查询语句的条件使用
+----+--------+---------------------+------+-------+
| id | name | time | age | wages |
+----+--------+---------------------+------+-------+
| 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 |
| 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 |
| 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 |
| 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 |
| 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 |
| 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 |
| 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 |
+----+--------+---------------------+------+-------+
-- 查询最大工资
select max(wages) from emp5;
+------------+
| max(wages) |
+------------+
| 2200 |
+------------+
-- 将最大工资作为条件插入查询name字段的语句中
select name from emp5 where wages = (select max(wages) from emp5);
+--------+
| name |
+--------+
| 竖八 |
+--------+
-- 多个字段同理
select name,age,wages from emp5 where wages = (select max(wages) from emp5);
+--------+------+-------+
| name | age | wages |
+--------+------+-------+
| 竖八 | 20 | 2200 |
+--------+------+-------+
2.联表查询
-- 查询部门表
select * from dep
+-----+--------------+
| id | name |
+-----+--------------+
| 200 | 技术部 |
| 201 | 人力资源 |
| 202 | 销售部 |
| 203 | 运营部 |
| 204 | 售后部 |
+-----+--------------+-- 查询员工表
select * from emp5;
+----+--------+---------------------+------+-------+--------+
| id | name | time | age | wages | dep_id |
+----+--------+---------------------+------+-------+--------+
| 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
+----+--------+---------------------+------+-------+--------+-- 联表查询dep和emp5
select * from dep,emp5;
+-----+--------------+----+--------+---------------------+------+-------+--------+
| id | name | id | name | time | age | wages | dep_id |
+-----+--------------+----+--------+---------------------+------+-------+--------+
| 204 | 售后部 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 203 | 运营部 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 202 | 销售部 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 201 | 人力资源 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 200 | 技术部 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 204 | 售后部 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 203 | 运营部 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 202 | 销售部 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 201 | 人力资源 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 200 | 技术部 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 204 | 售后部 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 203 | 运营部 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 202 | 销售部 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 201 | 人力资源 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 200 | 技术部 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 204 | 售后部 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 203 | 运营部 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 202 | 销售部 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 201 | 人力资源 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 200 | 技术部 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 204 | 售后部 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 203 | 运营部 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 202 | 销售部 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 201 | 人力资源 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 200 | 技术部 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 204 | 售后部 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 203 | 运营部 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 202 | 销售部 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 201 | 人力资源 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 200 | 技术部 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
| 204 | 售后部 | 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
| 203 | 运营部 | 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
| 202 | 销售部 | 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
| 201 | 人力资源 | 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
| 200 | 技术部 | 7 | 竖八 | 2024-01-25 16:14:19 | 20 | 2200 | 205 |
+-----+--------------+----+--------+---------------------+------+-------+--------+-- 添加条件限制,当员工表中的部门id = 部门表中id时,如果不存在对应的部门则不打印(比如id7的205部门)
select * from dep,emp5 where emp5.dep_id=dep.id;
+-----+--------------+----+--------+---------------------+------+-------+--------+
| id | name | id | name | time | age | wages | dep_id |
+-----+--------------+----+--------+---------------------+------+-------+--------+
| 203 | 运营部 | 1 | 张三 | 2024-01-25 15:24:19 | 18 | 2000 | 203 |
| 201 | 人力资源 | 2 | 倪哥 | 2024-01-25 15:34:11 | 20 | 1000 | 201 |
| 202 | 销售部 | 3 | 李四 | 2024-01-25 16:14:19 | 18 | 2000 | 202 |
| 203 | 运营部 | 4 | 陈五 | 2024-01-25 16:14:19 | 19 | 1000 | 203 |
| 201 | 人力资源 | 5 | 王六 | 2024-01-25 16:14:19 | 19 | 2000 | 201 |
| 200 | 技术部 | 6 | 横七 | 2024-01-25 16:14:19 | 20 | 1000 | 200 |
+-----+--------------+----+--------+---------------------+------+-------+--------+
- 例:打印各个部门中最高工资的员工信息
select * from emp5 where wages in (select max(wages) from emp5 group by dep_id);

3.GROUP BY
group by作用于where之后,order by之前- 不适用group by的场景:查询后显示所有数据,且没有分组需要,例如当表中基本没有重复数据时就没必要分组
将表格emp5以wages(工资)分组(2000,1000,2200)
select wages from emp5 group by wages;

- 例:我想查询各个部门的最高工资:
select dep_id,max(wages) from emp5 group by dep_id;

- 配合函数作用列,如
sum、max、avg、count等
select dep_id,sum(wages) from emp5 group by dep_id;
select dep_id,max(wages) from emp5 group by dep_id;
select dep_id,avg(wages) from emp5 group by dep_id;
select dep_id,count(*) from emp5 group by dep_id;
group_concat可以查看到组内所有人的属性- 根据部门(dep_id)分组,并且显示各个部门的人员
select group_concat(name), dep_id from emp5 group by dep_id;

group_concat也可以查看进行字符的拼接- 根据部门(dep_id)分组,并且显示各个部门的人员以及其工资
select group_concat(name,":",wages), dep_id from emp5 group by dep_id;

4.HAVING
HAVING一般紧随GROUP BY之后,一般用于限定SELECT筛选的字段- 查询各个部门的最高工资,并且排除薪资低于2000的
select dep_id,max(wages) from emp5 group by dep_id having max(wages)>2000;

- 查询各个部门的最高工资,并且只要202和203部门的
select dep_id,max(wages) from emp5 group by dep_id having dep_id in (202,203);

5.分页查询
limit 0,2从第0页开始,往后每页2条数据limit 2,2每页两条数据从第二页开始查询
select * from emp5 limit 0,2


6.排序查询
- 升序:
ASC - 降序:
DESC - 按照员工的工资升序排序
select * from emp5 order by wages ASC;

- 按照员工的部门排序,当部门相同时按照工资升序排序
select * from emp5 order by dep_id ASC, wages ASC;

数据控制语言DCL
1.事务
事务的四大特性:原子性,一致性,隔离性,持久性
- START TRANSACTION:开始事务
start transaction;
- ROLLBACK:回滚
rollback

- COMMIT:提交事务
提交事务后意味着改部分sql语句已运行结束,不能再执行回滚操作
start transaction;
insert into emp(name) values("王五");
commit; # 提交事务后无法再进行回滚
2.用户权限
- CREATE USER:创建新的用户并指定权限
username为用户名,password为密码,IDENTIFIED为指定用户密码的关键字
create user username IDENTIFIED by 'password';
- DROP USER:删除用户
DROP USER username;
- ALTER USER:更改用户权限或属性
ALTER USER username SET PASSWORD = 'new_password';
- GRANT:赋予用户权限
赋予user用户 SELECT,INSERT等权限,table_name为权限生效的表名(修改权限之前要use库)
GRANT SELECT, INSERT ON table_name TO user;
- REVOKE:取消用户权限
用法与grant相同
REVOKE SELECT, INSERT ON table_name FROM user;
6518652337)]
- COMMIT:提交事务
提交事务后意味着改部分sql语句已运行结束,不能再执行回滚操作
start transaction;
insert into emp(name) values("王五");
commit; # 提交事务后无法再进行回滚
2.用户权限
- CREATE USER:创建新的用户并指定权限
username为用户名,password为密码,IDENTIFIED为指定用户密码的关键字
create user username IDENTIFIED by 'password';
- DROP USER:删除用户
DROP USER username;
- ALTER USER:更改用户权限或属性
ALTER USER username SET PASSWORD = 'new_password';
- GRANT:赋予用户权限
赋予user用户 SELECT,INSERT等权限,table_name为权限生效的表名(修改权限之前要use库)
GRANT SELECT, INSERT ON table_name TO user;
- REVOKE:取消用户权限
用法与grant相同
REVOKE SELECT, INSERT ON table_name FROM user;
相关文章:
MySQL数据库基础合集
MySQL数据库基础合集 目录 MySQL数据库基础合集SQL关键字DDL关键字DML关键字DQL关键字DCL关键字约束关键字 SQL基础数据类型整数类型字符类型浮点类型时间类型 数据定义语言DDL1.查看数据库2.创建库3.删除库4.切换库5.创建表6.删除表7.查看表8.查看表属性9.插入列10.修改列11.设…...
oracle19.22的patch已发布
2024年01月16日,oracle发布了19.22的patch 具体patch如下 Reserved for Database - Do not edit or delete (Doc ID 19202401.9) 文档ID规则如下 19(版本)年份(202x)(季度首月01,04,07,10).9 往期patch no信息和下…...
HTML+CSS:3D轮播卡片
效果演示 实现了一个3D翻转的卡片动画,其中每个卡片都有不同的图片和不同的旋转角度。整个动画循环播放,无限次。整个页面的背景是一个占据整个屏幕的背景图片,并且页面内容被隐藏在背景图片之下。 Code <div class"container"…...
ES 分词器
概述 分词器的主要作用将用户输入的一段文本,按照一定逻辑,分析成多个词语的一种工具 什么是分词器 顾名思义,文本分析就是把全文本转换成一系列单词(term/token)的过程,也叫分词。在 ES 中,Ana…...
从0开始搭建若依微服务项目 RuoYi-Cloud(保姆式教程完结)
文章接上一章: 从0开始搭建若依微服务项目 RuoYi-Cloud(保姆式教程 一)-CSDN博客 四. 项目配置与启动 当上面环境全部准备好之后,接下来就是项目配置。需要将项目相关配置修改成当前相关环境。 数据库配置 新建数据库ÿ…...
Linux true/false区分
bash的数值代表和其它代表相反:0表示true;非0代表false。 #!/bin/sh PIDFILE"pid"# truenginx进程运行 falsenginx进程未运行 checkRunning(){# -f true表示普通文件if [ -f "$PIDFILE" ]; then# -z 字符串长度为0trueif [ -z &qu…...
一些著名的软件都用什么语言编写?
1、操作系统 Microsoft Windows :汇编 -> C -> C 备注:曾经在智能手机的操作系统(Windows Mobile)考虑掺点C#写的程序,比如软键盘,结果因为写出来的程序太慢,实在无法和别的模块合并&…...
外卖跑腿系统开发:构建高效、安全的服务平台
在当今快节奏的生活中,外卖跑腿系统的开发已成为技术领域的一个重要课题。本文将介绍如何使用一些常见的编程语言和技术框架,构建一个高效、安全的外卖跑腿系统。 1. 技术选择 在开始开发之前,我们需要选择适合的技术栈。常用的技术包括&a…...
【MQ02】基础简单消息队列应用
基础简单消息队列应用 在上一课中,我们已经学习到了什么是消息队列,有哪些消息队列,以及我们会用到哪个消息队列。今天,就直接进入主题,学习第一种,最简单,但也是最常用,最好用的消息…...
CTF CRYPTO 密码学-7
题目名称:敲击 题目描述: 让我们回到最开始的地方 0110011001101100011000010110011101111011011000110110010100110011011001010011010100110000001100100110001100101101001101000011100001100011001110010010110100110100011001000011010100110000…...
随机森林和决策树区别
随机森林(Random Forest)和决策树(Decision Tree)是两种不同的机器学习算法,其中随机森林是基于决策树构建的一种集成学习方法。以下是它们之间的主要区别: 决策树: 单一模型: 决策树是一种单一模型&#…...
新建VM虚拟机-安装centOS7-连接finalshell调试
原文 这里有问题 首先进入/etc/sysconfig/network-scripts/目录 cd /etc/sysconfig/network-scripts/ 然后编辑文件 ifcfg-ens33 vi ifcfg-ens33...
936. 戳印序列
Problem: 936. 戳印序列 文章目录 思路解题方法复杂度Code 思路 这道题目要求我们通过使用印章来印刷目标字符串,使得目标字符串最终变成全为’?‘的字符串。我们可以使用贪心的思想来解决这个问题。 首先,我们需要找到所有可以匹配印章的位置ÿ…...
20240129收获
今天终于发现《八部金刚功》第五部我一直做的是错的,嗨。这里这个写法非常聪明,创立的数组,以及用obj[key] item[key]这样的写法,这个写法充分展示了js常规写法中只有等号右边会去参与运算,等号左边就是普通的键的写法…...
【虚拟机数据恢复】异常断电导致虚拟机无法启动的数据恢复案例
虚拟机数据恢复环境: 某品牌R710服务器MD3200存储,上层是ESXI虚拟机和虚拟机文件,虚拟机中存放有SQL Server数据库。 虚拟机故障: 机房非正常断电导致虚拟机无法启动。服务器管理员检查后发现虚拟机配置文件丢失,所幸…...
vue3 + antd 封装动态表单组件(三)
传送带: vue3 antd 封装动态表单组件(一) vue3 antd 封装动态表单组件(二) 前置条件: vue版本 v3.3.11 ant-design-vue版本 v4.1.1 我们发现ant-design-vue Input组件和FormItem组件某些属性支持slot插…...
【算法专题】贪心算法
贪心算法 贪心算法介绍1. 柠檬水找零2. 将数组和减半的最少操作次数3. 最大数4. 摆动序列(贪心思路)5. 最长递增子序列(贪心算法)6. 递增的三元子序列7. 最长连续递增序列8. 买卖股票的最佳时机9. 买卖股票的最佳时机Ⅱ(贪心算法)10. K 次取反后最大化的数组和11. 按身高排序12…...
x-cmd pkg | sqlite3 - 轻量级的嵌入式关系型数据库
目录 简介首次用户 技术特点竞品和相关产品sqlite 与 x-cmd进一步阅读 简介 sqlite3 是一个轻量级的文件数据库,体积非常小,提供简单优雅而功能强大的 sql 化的数据查询。 通常情况下,sqlite 指的是 SQLite 2.x 版本,而 sqlite3 …...
LeetCode —— 43. 字符串相乘
😶🌫️😶🌫️😶🌫️😶🌫️Take your time ! 😶🌫️😶🌫️😶🌫️😶🌫️…...
PalWorld/幻兽帕鲁Ubuntu 22.04 LTS 一键部署脚本
上去就是干! 创建install.sh文件 #!/bin/bashsteam_usersteam log_path/tmp/pal_server.logif getent passwd "$steam_user" >/dev/null 2>&1; thenecho "User $steam_user exists." elseecho "User $steam_user does not exi…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...
