MySQL基础应用之DDL、DCL、DML、DQL

文章目录

  • 前言
  • 一、sql基础应用
  • 二、列、表属性
    • 1、列属性
    • 2、表属性
  • 三、sql学习记录---DDL应用之数据库定义语言
    • 1、建库规范
    • 2、创建库并设置字符集、校验规则
    • 3、查看数据库
    • 4、删除数据库
    • 5、修改数据库字符集
  • 四、sql学习记录---DDL应用之表定义语言
    • 1、建表规范
    • 2、建表
    • 3、查询建表信息
    • 4、创建一个表结构一样的表
    • 5、删表
    • 6、修改表
  • 五、sql学习记录---DCL应用
  • 六、sql学习记录---DML应用
    • 1、insert学习-->按照表结构插入一条学生信息
    • 2、update学习--更新信息
    • 3、delete学习--删除一条信息
  • 七、sql学习记录---DQL应用
    • 1、select单独使用的情况
    • 2、select 通用语法 单表查询
    • 3、select 配合group by +聚合函数应用
    • 4、select 配合having 应用
    • 5、select 配合order by子句
    • 6、select 配合limit子句
    • 7、select配合union all 子句
    • 8、select 配合 distinct 去重复
  • 总结


前言

本章内容主要以mysql基础应用、代名词、DDL语句的学习为主,通过前两章内容,已了解了数据库的安装、sql的执行过程、基础管理的学习。


一、sql基础应用

sql介绍
      1、结构化的查询语言  
      2、关系型数据库通用的命令  
      3、遵循SQL92的国际标准
sql常用种类
    DDL 、DML 、DCL 、DQL
sql引入-数据库的逻辑结构
            库
              库名
              库属性: 字符集、排序规则
            表
              表名
              表属性: 存储引擎、字符集、排序规则
              列名
              列属性: 数据类型,约束,其他属性
              数据行
字符集
     show charset; 查看mysql都有哪些字符集;建议使用utf8(占3个字节)、utf8mb4(占4个字节)
排序规则
    show collation; 查看mysql都有哪些排序规则,建议使用utf8mb4_general_ci(大小写不敏感)、utf8mb4_bin(大小写敏感)
数据类型
    数字类型 --> 整数、浮点数  tinyint  : -128~127 、 int       :-2^31~2^31-1
说明:手机号是无法存储到int的。一般是使用char类型来存储收集号
    字符串 --> 
    	char(长度)(定长字符串类型,不管字符串长度多长,都立即分配100个字符长度的存储空间,未占满的空间使用“空格”填充、 varchar(长度)(变长字符串类型,每次存储数据前,先判断长度,按需分配空间)、enum('bj','tj','sh')
枚举类型,比较适合于将来此列的值是固定范围内的特点,可以使用enum,可以很大程度的优化我们的索引结构。
    时间 --> datatime、timestamp
    二进制

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意:
	列值不能为空,也是表设计的规范,尽可能将所有的列设置为非空。可以设置默认值为0
unique key:
	 唯一键,列值不能重复
unsigned:
	无符号 针对数字列,非负数。
其他属性:
	key :索引,可以在某列上建立索引,来优化查询

二、列、表属性

1、列属性

约束(一般建表时添加):
primary key :主键约束
	设置为主键的列,此列的值必须非空且唯一,主键在一个表中只能有一个,但是可以有多个列一起构成。
not null  :非空约束
	列值不能为空,也是表设计的规范,尽可能将所有的列设置为非空。可以设置默认值为0
unique key :唯一键
	列值不能重复
unsigned :无符号
	针对数字列,非负数。
其他属性:
key :索引
	可以在某列上建立索引,来优化查询,一般是根据需要后添加
default  :默认值
	列中,没有录入值时,会自动使用default的值填充
auto_increment :自增长
	针对数字列,顺序的自动填充数据(默认是从1开始,将来可以设定起始点和偏移量)
comment : 注释

2、表属性

存储引擎:
	InnoDB(默认的)
字符集:
	utf8       
	utf8mb4
排序规则:
	utf8mb4_general_ci(大小写不敏感)
	utf8mb4_bin(大小写敏感)

三、sql学习记录—DDL应用之数据库定义语言

1、建库规范

   a、建库使用小写字符
   b、库名不能以数字开头
   c、不能是数据库内部的关键字
   d、必须设置字符集

2、创建库并设置字符集、校验规则

mysql> create database test charset utf8mb4 collate utf8mb4_bin; 
       Query OK, 1 row affected (0.00 sec)

3、查看数据库

mysql> show databases;
                  +--------------------+
                  | Database           |
                  +--------------------+
                  | information_schema |
                  | mysql              |
                  | performance_schema |
                  | sys                |
                  | test               |
                  +--------------------+
                  5 rows in set (0.00 sec)

 mysql> show create database test;
         +----------+--------------------------------------------------------------------------------------+
         | Database | Create Database                                                                      |
         +----------+--------------------------------------------------------------------------------------+
         | test     | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin */ |
         +----------+--------------------------------------------------------------------------------------+
         1 row in set (0.00 sec)

4、删除数据库

(生产禁止该操作,如需操作,需要层层审批)

mysql> drop database test;
      Query OK, 0 rows affected (0.00 sec)

5、修改数据库字符集

注意: 一定是从小往大改,比如 utf8-->utf8mb4

mysql> create database test;
       Query OK, 1 row affected (0.00 sec)

mysql> show create database test;
       +----------+-----------------------------------------------------------------+
       | Database | Create Database                                                 |
       +----------+-----------------------------------------------------------------+
       | test     | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET latin1 */ |
       +----------+-----------------------------------------------------------------+
       1 row in set (0.00 sec)

mysql> alter database test charset utf8mb4;
       Query OK, 1 row affected (0.00 sec)

mysql> show create database test;
       +----------+------------------------------------------------------------------+
       | Database | Create Database                                                  |
       +----------+------------------------------------------------------------------+
       | test     | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
       +----------+------------------------------------------------------------------+
       1 row in set (0.00 sec)

四、sql学习记录—DDL应用之表定义语言

1、建表规范

  a、表名小写字母,不能是数字开头、内置关键字
  b、尽量跟业务相关
  c、选择合适的数据类型及长度
  d、每个列设置not null +default,对于数据0填充,对于字符使用有效字填充
  e、每个列添加注释
  f、表必须设置存储引擎类型、字符集
  g、主键列尽量是无关列数字列,最好是自增长
  h、enum枚举类型不要保存数字,只能是字符串类型

2、建表

表名、列名、列属性、表属性
            常用的列属性
                  PRIMARY KEY :主键约束,表中只能有一个且非空
                  NOT NULL : 非空约束,不允许空值
                  UNIQUE KEY : 唯一键约束,不允许重复
                  DEFAULT : 一般配合NOT NULL 使用
                  UNSIGNED: 无符号,一般是配合数字列,非负数
                  COMMENT: 注释,每列必须要有自己的注释
                  AUTO_INCRMENT: 自增长的列
                  
mysql> create table test.stu(
			id int primary key not null auto_increment comment "学号",
            sname varchar(255) not null comment "姓名",
            age tinyint unsigned not null default 0 comment '年龄',
            gender enium('m','f','n') not null default 'n' comment '性别',
            intime datetime not null default NOW() comment '入学时间'
            ) engine innodb charset utf8mb4 comment '学生信息表';  
       Query OK, 0 rows affected (0.01 sec)

3、查询建表信息

查询建表信息
mysql> show tables;
       +----------------+
       | Tables_in_test |
       +----------------+
       | stu            |
       +----------------+
      1 row in set (0.00 sec)

4、创建一个表结构一样的表

mysql> create table students like stu; 
      Query OK, 0 rows affected (0.01 sec)

5、删表

mysql> drop table students;
      Query OK, 0 rows affected (0.01 sec)

6、修改表

a、在stu表中添加手机号列 (注意: 当数量过大可能会产生锁表现象)
      mysql> desc stu;  #查看表结构
            +--------+---------------------+------+-----+-------------------+----------------+
            | Field  | Type                | Null | Key | Default           | Extra          |
            +--------+---------------------+------+-----+-------------------+----------------+
            | id     | int(11)             | NO   | PRI | NULL              | auto_increment |
            | sname  | varchar(255)        | NO   |     | NULL              |                |
            | age    | tinyint(3) unsigned | NO   |     | 0                 |                |
            | gender | enum('m','f','n')   | NO   |     | n                 |                |
            | intime | datetime            | NO   |     | CURRENT_TIMESTAMP |                |
            +--------+---------------------+------+-----+-------------------+----------------+
            5 rows in set (0.00 sec)
                        
      mysql> alter table stu add phone  varchar(11) not null unique comment '手机号';
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0
b、在sname列后加微信列
      mysql> alter table stu add wechat varchar(64) not null unique comment '微信号' after sname;
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0
c、在第一列前加一列card
      mysql> alter table stu add card int not null unique comment '身份证号' first;
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0
d、把刚才添加的列删除掉(注意: 可能会产生锁表现象)
      mysql> alter table stu drop card;
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0
e、修改sname数据类型的属性
      mysql> alter table stu modify sname varchar(64) not null comment '姓名';
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0
f、修改gender改为sg 数据类型改为char类型
      mysql> alter table stu change gender sg char(4) not null comment '性别';
             Query OK, 0 rows affected (0.01 sec)
             Records: 0  Duplicates: 0  Warnings: 0

五、sql学习记录—DCL应用

grant all on *.* to root@'10.0.0.%' identified by '123'; 授权
revoke delete on 库名.表名 from 用户名@'白名单'; 权限回收

六、sql学习记录—DML应用

1、insert学习–>按照表结构插入一条学生信息

---偷懒写法
            mysql> insert stu values(1,'张三','rtsj5k',22,'m',NOW(),'17245679876');
                  Query OK, 1 row affected (0.00 sec)
            mysql> select * from stu;
                  +----+--------+--------+-----+----+---------------------+-------------+
                  | id | sname  | wechat | age | sg | intime              | phone       |
                  +----+--------+--------+-----+----+---------------------+-------------+
                  |  1 | 张三   | rtsj5k |  22 | m  | 2024-01-13 17:07:55 | 17245679876 |
                  +----+--------+--------+-----+----+---------------------+-------------+
                  1 row in set (0.00 sec)
---规范写法
            mysql> insert into stu (sname,wechat,age,sg,phone) values('李四','kmndy',23,'f','18976585647');
                  Query OK, 1 row affected (0.00 sec)

            mysql> select * from stu;
                  +----+--------+--------+-----+----+---------------------+-------------+
                  | id | sname  | wechat | age | sg | intime              | phone       |
                  +----+--------+--------+-----+----+---------------------+-------------+
                  |  1 | 张三   | rtsj5k |  22 | m  | 2024-01-13 17:07:55 | 17245679876 |
                  |  2 | 李四   | kmndy  |  23 | f  | 2024-01-13 17:11:00 | 18976585647 |
                  +----+--------+--------+-----+----+---------------------+-------------+
                  2 rows in set (0.00 sec)
---规范写法--一次性插入多条数据
            mysql> insert stu (sname,wechat,age,sg,phone) values('王五','djgnoe',22,'f','18976659847'),('可乐','kmdjron',23,'m','16789786756');
                  Query OK, 2 rows affected (0.00 sec)
                  Records: 2  Duplicates: 0  Warnings: 0

            mysql> select * from stu;
                  +----+--------+---------+-----+----+---------------------+-------------+
                  | id | sname  | wechat  | age | sg | intime              | phone       |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  |  1 | 张三   | rtsj5k  |  22 | m  | 2024-01-13 17:07:55 | 17245679876 |
                  |  2 | 李四   | kmndy   |  23 | f  | 2024-01-13 17:11:00 | 18976585647 |
                  |  3 | 王五   | djgnoe  |  22 | f  | 2024-01-13 17:14:13 | 18976659847 |
                  |  4 | 可乐   | kmdjron |  23 | m  | 2024-01-13 17:14:13 | 16789786756 |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  4 rows in set (0.00 sec)

2、update学习–更新信息

注意:update语句必须要加where。
            mysql> UPDATE stu SET sname='赵四' WHERE id=2;
                  Query OK, 1 row affected (0.01 sec)
                  Rows matched: 1  Changed: 1  Warnings: 0

            mysql> select * from stu;
                  +----+--------+---------+-----+----+---------------------+-------------+
                  | id | sname  | wechat  | age | sg | intime              | phone       |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  |  1 | 张三   | rtsj5k  |  22 | m  | 2024-01-13 17:07:55 | 17245679876 |
                  |  2 | 赵四   | kmndy   |  23 | f  | 2024-01-13 17:11:00 | 18976585647 |
                  |  3 | 王五   | djgnoe  |  22 | f  | 2024-01-13 17:14:13 | 18976659847 |
                  |  4 | 可乐   | kmdjron |  23 | m  | 2024-01-13 17:14:13 | 16789786756 |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  4 rows in set (0.00 sec)

3、delete学习–删除一条信息

			mysql> DELETE FROM stu  WHERE id=3;
                  Query OK, 1 row affected (0.00 sec)

            mysql> select * from stu;
                  +----+--------+---------+-----+----+---------------------+-------------+
                  | id | sname  | wechat  | age | sg | intime              | phone       |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  |  1 | 张三   | rtsj5k  |  22 | m  | 2024-01-13 17:07:55 | 17245679876 |
                  |  2 | 赵四   | kmndy   |  23 | f  | 2024-01-13 17:11:00 | 18976585647 |
                  |  4 | 可乐   | kmdjron |  23 | m  | 2024-01-13 17:14:13 | 16789786756 |
                  +----+--------+---------+-----+----+---------------------+-------------+
                  3 rows in set (0.00 sec)
--全表删除
            DELETE FROM stu
            truncate table stu;
--区别:
            delete: DML操作, 是逻辑性质删除,逐行进行删除,速度慢.
            truncate: DDL操作,对与表段中的数据页进行清空,速度快. 
--伪删除 用update来替代delete,最终保证业务中查不到(select)即可
                  1.添加状态列
                        ALTER TABLE stu ADD state TINYINT NOT NULL DEFAULT 1 ;
                        SELECT * FROM stu;
                  2. UPDATE 替代 DELETE
                        UPDATE stu SET state=0 WHERE id=6;
                  3. 业务语句查询
                        SELECT * FROM stu WHERE state=1;

七、sql学习记录—DQL应用

1、select单独使用的情况

mysql> select @@basedir; #查看安装目录
mysql> select database(); #查看当前库
mysql> select now();      #查看当前时间

2、select 通用语法 单表查询

select 列名1,列名2 from 表名 where 条件 group by 条件  having 条件 order by 条件 limit;
示例:
查询表中所有信息
    mysql> select id,sname,phone from stu;
            
where等值查询 -- 查询id=1的数据
    mysql> select sname,phone from stu where id=1;
            
where不等值查询(大于、小于、大于等于、小于等于) -- 查询id大于1的数据
    mysql> select sname,phone from stu where id>1;
            
where配合逻辑连接符(andor) 
   -- 查询id为1并且姓名为张三的手机号
         mysql> select phone from stu where id=1 and name='张三';
   -- 查询id为1或者姓名为张三的手机号
         mysql> select phone from stu where id=1 or name='张三';
                  
where配合 like 子句进行模糊查询  查询姓名中 '李' 开头的数据
   mysql> select * from stu where sname like '李%';
   注意: 不要出现类似于 %xx% 前后都有百分号的语句,因为不走索引,功能上虽然能实现,但性能比较差
               
where 配合in 语句  查询李四和王五的信息
   mysql> select * from stu where sname in ('李四','王五');

3、select 配合group by +聚合函数应用

常用聚合函数
    max() 最大值
    min() 最小值
    avg() 平均值
    count() 个数
    sum() 总和
    group_concat() 列转行
    
group by 
	将某列中有共同条件的数据行,分成一组,然后在进行聚合函数操作
示例:
	查询每个国家的城市个数
        mysql> select countrycode,count(id) from city group by countrycode;
                  
    查询每个国家的总人口数
        mysql> select countrycode,sum(population) from city group by countrycode;
                  
    统计中国每个省城市的名字列表
        mysql> select district,group_concat(name ) from city  where countrycode='CHN' group by district;

4、select 配合having 应用

示例:
	统计每个国家的总人口数量,将总人口数大于1亿的过滤出来
       mysql> select countrycode,sum(population) from city group by countrycode having SUM(population)>100000000;

5、select 配合order by子句

desc 从大到小排序  
默认就是从小到大排序
示例:
   统计每个国家的总人口数量,将总人口数量大于5000w的过滤出来,并且按照从大到小进行排序
       mysql> select countrycode,sum(population) from city group by countrycode having SUM(population)>50000000 order by sum(population) desc;

6、select 配合limit子句

示例:
  统计每个国家的总人口数量,将总人口数量大于5000w的过滤出来,并且按照从大到小进行排序,显示前3个数据
     mysql> select countrycode,sum(population) from city group by countrycode having SUM(population)>50000000 order by sum(population) desc limit 3;
                  
  统计每个国家的总人口数量,将总人口数量大于5000w的过滤出来,并且按照从大到小进行排序,显示第4-6limit 3 offset 3 跳过3行,显示一共3行
     mysql> select countrycode,sum(population) from city group by countrycode having SUM(population)>50000000 order by sum(population) desc limit 3 offset 3;

7、select配合union all 子句

示例;
    查询中国或者美国的城市信息
       原句 myslq > select * from city where countrycode='CHN' or countrycode='USA';
    使用union all 改写
       改写后 mysql > select * from city where countrycode='CHN' union all select * from city where countrycode='USA';
                        
注意: 在索引方面,改写后的语句比原句的索引等级要高。

unionunion all的区别?
   union 会去重复
   union all 不会去重复

8、select 配合 distinct 去重复

示例
   查找城市属于哪个国家
      mysql > SELECT DISTINCT(countrycode) FROM city  ;

总结

以上 sql语句和案例仅供参考

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/319053.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

远程开发之端口转发

远程开发之端口转发 涉及的软件forwarded port 通过端口转发,实现在本地电脑上访问远程服务器上的内网的服务。 涉及的软件 vscode、ssh forwarded port 在ports界面中的port字段,填需要转发的IP:PORT,即可转发远程服务器中的内网端口到本…

电脑误清空回收站重要文件不见了?请尝试这12个最好回收站恢复工具。

作为计算机用户,我们都知道回收站的重要性。它是帮助我们临时存储已删除文件的重要工具。但是,如果您不小心清空了回收站或从中删除了一些重要文件怎么办?不用担心,市场上有许多回收站恢复工具可以帮助您找回已删除的数据。在本文…

KEI5许可证没到期,编译却出现Error: C9555E: Failed to check out a license.问题解决

一、编译出现如下报错 二、检查一下许可证 三、许可证在许可日期内,故应该不是许可证的问题 四、检查一下编译器,我用的是这个,这几个编译器的区别其实我不太明白,但我把问题解决是选的这个 五、找到编译器的路径,去复…

【k8s】Kubernetes 声明式 API、命令式

1. 资源管理方式: 1>. 命令式对象管理∶直接使用命令去操作kubernetes资源 kubectl run nginx-pod --imagenginx:1.17.1 --port802>. 命令式对象配置∶通过命令配置和配置文件去操作kubernetes资源 kubectl create/patch -f nginx-pod.yaml3>. 声明式对…

即将推出的 OpenWrt One/AP-24.XY:OpenWrt 和 Banana Pi 合作路由器板

OpenWrt开发人员正在与Banana Pi合作开发OpenWrt One/AP-24.XY路由器板。OpenWrt 是一个轻量级嵌入式 Linux 操作系统,支持近 1,800 个路由器和其他设备。然而,这将是第一块由 OpenWrt 直接开发的路由器板。 该主板将基于 MediaTek MT7981B (Filogic 82…

详解HTTPS加密工作过程

🚗🚗🚗今天给大家分享的是HTTPS加密的工作过程。 清风的CSDN博客 🛩️🛩️🛩️希望我的文章能对你有所帮助,有不足的地方还请各位看官多多指教,大家一起学习交流! ✈️✈…

【CAN】Mailbox/Hardware Object/HRH/HTH概念介绍

文章目录 1. 前言2. MCMCAN硬件RAM缓存区2.1 RAM缓存区分配2.2 发送缓存区2.3 接收缓存区 3. MailBox&#xff0c;HWObject&#xff0c;HRH&#xff0c;HTH概念1. MailBox2. HWObject3. HRH4. HTH5. 对应关系 >>返回总目录<< 1. 前言 Aurix TC3xx系列MCU中的MCMC…

Gitlab中的CICD的使用方法

一、CI/CD执行机制 二、离线安装gitlab-runner 下载相应版本的gitlab-runner &#xff08;下载地址&#xff1a;https://packages.gitlab.com/runner/gitlab-runner&#xff09; dpkg -i gitlab-runner_12.8.0_amd64.debgitlab-runner register第3步中需要的信息可从下图所示…

网页设计与网站建设作业html+css+js,一个简易的游戏官网网页

一个简易的游戏网页 浏览器查看 目录结构 部分代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport&…

隧道应用1-netsh端口映射内网

测试环境信息 物理机内网 IP &#xff1a;192.168.249.1 win7 虚拟机 IP &#xff1a; 192.168.249.131 win10 虚拟机 IP &#xff1a;192.168.249.129 我们在 win7 上配置 netsh 端口映射&#xff0c;将 win7 作为跳板机&#xff0c;进而访问到 win10 的服务。 端口映射与…

算法每日一题: 删除排序列表中的重复元素 | 链表的删除

大家好&#xff0c;我是星恒 今天给大家带来的是一道简单的链表删除题&#xff0c;题目很简单&#xff0c;不过可以帮助我们很好的复习链表的删除&#xff0c;尤其适合基础薄弱的友友们学习 ~ 题目&#xff1a;leetcode 83 给定一个已排序的链表的头 head &#xff0c; 删除所有…

【每日一题】删除排序链表中的重复元素

文章目录 Tag题目来源解题思路方法一&#xff1a;比较相邻两节点 写在最后 Tag 【遍历】【链表】【2024-01-14】 题目来源 83. 删除排序链表中的重复元素 解题思路 方法一&#xff1a;比较相邻两节点 思路 比较两个相邻的节点&#xff0c;如果下一个节点值和当前节点值一样…

数据库练习题

素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作 等 CREATE TABLE worker ( 部门号 int(11) NOT NULL, 职工号 int(11) NOT NULL, 工作时间 date NOT NULL, 工资 float(8,2) NOT NULL, 政治面貌 varchar(10) NO…

Dockerfile的ADD和COPY

文章目录 环境ADD规则校验远程文件checksum添加Git仓库添加私有Git仓库ADD --link COPYCOPY --parent 使用ADD还是COPY&#xff1f;参考 环境 RHEL 9.3Docker Community 24.0.7 ADD ADD 指令把 <src> 的文件、目录、或URL链接的文件复制到 <dest> 。 ADD 有两种…

Makefile编译原理 make和makefile

一.什么是makefile 如图所示&#xff0c;一个工程中的源文件不计其数&#xff0c;其按类型、功能、模块分别放在若干个目录中&#xff0c; Makefile 文件定义了一系列的规则来指定哪些文件需要先编译&#xff0c;哪些文件需要后编译&#xff0c;哪些文件需要重新编译&#xff…

Python中如何简化if...else...语句

一、引言 我们通常在Python中采用if...else..语句对结果进行判断&#xff0c;根据条件来返回不同的结果&#xff0c;如下面的例子。这段代码是一个简单的Python代码片段&#xff0c;让用户输入姓名并将其赋值给变量user_input。我们能不能把这几行代码进行简化&#xff0c;优化…

JS数组函数 reduce() 的用法—包含基础、进阶、高阶用法

目录 一、语法剖析 二、实例讲解 1. 求数组项之和 2. 求数组项最大值 3. 数组去重 三、其他相关方法 1. reduceRight() 2. forEach()、map()、every()、some()和filter() 四、重点总结 先看w3c语法 ✔ 常见用法 数组求和 数组最大值 ✔ 进阶用法 数组对象中的用…

vmware和ubuntu镜像下载地址

这里有vmware16和ubuntu20.0下载 链接&#xff1a;https://pan.baidu.com/s/1i9IC-KnJlrVDbl6SJ5SIKQ?pwdy2dd 提取码&#xff1a;y2dd 链接&#xff1a;https://pan.baidu.com/s/1imqJVD2dLE1TB6jIrq1-Fg?pwd690f 提取码&#xff1a;690f 这个是我本人下的vmware17 密钥可…

关于tex中的表格设置

文章目录 控制表格列宽和行高控制表格列宽的同时实现居中tex中多表格排列单元格的合并与分割对单个单元格进行操作 控制表格列宽和行高 将下面的代码放在table环境内&#xff0c;放在tabular环境外 调整表格宽度和高度&#xff1a; \resizebox{\textwidth}{2cm}{%第一个{}是表…

【计算机二级考试C语言】C数据类型

C 数据类型 在 C 语言中&#xff0c;数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间&#xff0c;以及如何解释存储的位模式。 C 中的类型可分为以下几种&#xff1a; 序号类型与描述1基本数据类型 它们是算术类型&#x…
最新文章