知行编程网知行编程网  2022-07-30 07:00 知行编程网 隐藏边栏 |   抢沙发  2 
文章评分 0 次,平均分 0.0
太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!
作者:不剪发的Tony老师
链接:https://blog.csdn.net/horses/article/details/104553075


本文介绍关系数据库的设计思想:在 SQL 中,一切皆关系


在计算机龄域有许多伟大的设计理念和思想,例如:
  •  Unix 中,一切皆文件

  • 面向对象的编程语言中,一切皆对象


关系数据库同样也有自己的设计思想: SQL 中,一切皆关系


01

关系模型


关系模型(Relational model)由 E.F.Codd 博士于 1970 年提出,以集合论中的关系概念为基础;无论是现实世界中的实体对象还是它们之间的联系都使用关系表示。我们在数据库系统中看到的关系就是二维表(Table),由(Row)和(Column)组成。因此,也可以说关系表是由数据行构成的集合。

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

关系模型由数据结构关系操作完整性约束三部分组成。


  • 关系模型中的数据结构就是关系表,包括基础表派生表(查询结果)和虚拟表(视图)。

  • 常用的关系操作包括增加修改查询(CRUD),使用的就是 SQL 语言。其中查询操作最为复杂,包括选择(Selection)、投影(Projection)、并集(Union)、交集(Intersection)、差集(Exception)以及笛卡儿积(Cartesian product)等。

  • 完整性约束用于维护数据的完整性或者满足业务约束的需求,包括实体完整性(主键约束)、参照完整性(外键约束)以及用户定义的完整性(非空约束、唯一约束、检查约束和默认值)。


我们今天的主题是关系操作语言,也就是 SQL。


02

面向集合


SQL(结构化查询语言)是操作关系数据库的标准语言。SQL 非常接近英语,使用起来非常简单。它在设计之初就考虑了非技术人员的使用需求,我们通常只需说明想要的结果(What),而将数据处理的过程(How)交给数据库管理系统。所以说,SQL 才是真正给人用的编程语言!

接下来我们具体分析一下关系的各种操作语句;目的是为了让大家能够了解 SQL 是一种面向集合的编程语言,它的作对象是集合,操作的结果也是集合

在关系数据库中,关系、表、集合三者通常表示相同的概念。

03

SELECT


下面是一个简单的查询语句:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> employee_id, first_name, last_name, hire_date<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> employees;</section>

它的作用就是从 employees 表中查询员工信息。

显然,我们都知道 FROM 之后是一个表(关系、集合)。不仅如此,整个查询语句的结果也是一个表

所以,我们可以将上面的查询作为表使用:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> *<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> (<span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> employee_id, first_name, last_name, hire_date<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />          <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> employees) t;</section>

括号内的查询语句被称为派生表,我们给它指定了一个别名叫做 t。同样,整个查询结果也是一个表;这就意味着我们可以继续嵌套,虽然这么做很无聊。

我们再看一个 PostgreSQL 中的示例:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(92, 99, 112);width: 94px;font-style: italic;box-sizing: border-box !important;word-wrap: break-word !important;">-- PostgreSQL</span><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> *<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">upper</span>(<span style="max-width: 100%;color: rgb(152, 195, 121);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">'sql'</span>);<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />| upper |<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />|<span style="max-width: 100%;color: rgb(92, 99, 112);width: 58px;font-style: italic;box-sizing: border-box !important;word-wrap: break-word !important;">-------|</span><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />| SQL |</section>

upper() 是一个大写转换的函数。它出现再 FROM 子句中,意味着它的结果也是一个表,只不过是 1 行 1 列的特殊表

SELECT 子句用于指定需要查询的字段,可以包含表达式、函数值等。SELECT 在关系操作中被称为投影(Projection),看下面的示意图应该就比较好理解了。

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

除了 SELECT 之外,还有一些常用的 SQL 子句。

WHERE 用于指定数据过滤的条件,在关系运算中被称为选择(Selection),示意图如下:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

ORDER BY 用于对查询的结果进行排序示意图如下:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

总之,SQL 可以完成各种数据操作,例如过滤、分组、排序、限定数量等;所有这些操作的对象都是关系表,结果也是关系表

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

在这些关系操作中,有一个比较特殊,就是分组。

04

GROUP BY


分组( GROUP BY)操作和其他的关系操作不同,因为它改变了关系的结构。来看下面的示例:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> department_id, <span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">count</span>(*), first_name<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> employees<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">GROUP</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 15px;box-sizing: border-box !important;word-wrap: break-word !important;">BY</span> department_id;</section>

该语句的目的是按照部门统计员工的数量,但是存在一个语法错误,就是 first_name 不能出现在查询列表中。原因在于按照部门进行分组的话,每个部门包含多个员工;无法确定需要显示哪个员工的姓名,这是一个逻辑上的错误。

所以说,GROUP BY 改变了集合元素(数据行)的结构,创建了一个全新的关系。

分组操作的示意图如下:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

尽管如此,GROUP BY 的结果仍然是一个集合。

05

UNION


SQL 面向集合特性最明显的体现就是:
  • UNION(并集运算)

  • INTERSECT(交集运算)

  • EXCEPT/MINUS(差集运算)


这些集合运算符的作用都是将两个集合并成一个集合,因此需要满足以下条件:
  • 两边的集合中字段的数量和顺序必须相同;

  • 两边的集合中对应字段的类型必须匹配或兼容。


具体来说,UNION 和 UNION ALL 用于计算两个集合的并集,返回出现在第一个查询结果或者第二个查询结果中的数据。

它们的区别在于 UNION排除了结果中的重复数据,UNION ALL保留了重复数据。

下面是 UNION 操作的示意图:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

INTERSECT 操作符用于返回两个集合中的共同部分,即同时出现在第一个查询结果和第二个查询结果中的数据,并且排除了结果中的重复数据

INTERSECT 运算的示意图如下:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

EXCEPT 或者 MINUS 操作符用于返回两个集合的差集,即出现在第一个查询结果中,但不在第二个查询结果中的记录,并且排除了结果中的重复数据

EXCEPT 运算符的示意图如下:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

除此之外,DISTINCT 运算符用于消除重复数据,也就是排除集合中的重复元素。

SQL 中的关系概念来自数学中的集合理论,因此 UNION、INTERSECT 和 EXCEPT 分别来自集合论中的并集(∪cup∪)、交集(∩cap∩)和差集(∖setminus∖)运算。

需要注意的是,集合理论中的集合不允许存在重复的数据,但是 SQL 允许。因此,SQL 中的集合也被称为多重集合(multiset);多重集合与集合理论中的集合都是无序的,但是 SQL 可以通过 ORDER BY 子句对查询结果进行排序。

06

JOIN


在 SQL 中,不仅实体对象存储在关系表中,对象之间的联系也存储在关系表中。因此,当我们想要获取这些相关的数据时,需要使用到另一个操作:连接查询(JOIN)

常见的 SQL连接查类型包括内连接外连接交叉连接等。其中,外连接又可以分为左外连接、右外连接以及全外连接。

内连接(Inner Join)返回两个表中满足连接条件的数据,内连接的原理如下图所示:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

左外连接(Left Outer Join)返回左表中所有的数据;对于右表,返回满足连接条件的数据;如果没有就返回空值。

左外连接的原理如下图所示:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

右外连接(Right Outer Join)返回右表中所有的数据;对于左表,返回满足连接条件的数据,如果没有就返回空值。右外连接与左外连接可以互换以下两者等价:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;">t1 <span style="max-width: 100%;color: rgb(152, 195, 121);width: 37px;box-sizing: border-box !important;word-wrap: break-word !important;">RIGHT</span> JOIN t2<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />t2 <span style="max-width: 100%;color: rgb(152, 195, 121);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">LEFT</span> JOIN t1</section>

全外连接(Full Outer Join)等价于左外连接加上右外连接,同时返回左表和右表中所有的数据;对于两个表中不满足连接条件的数据返回空值。

全外连接的原理如下图所示:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

交叉连接也称为笛卡尔积(Cartesian Product)。两个表的交叉连接相当于一个表的所有行和另一个表的所有行两两组合,结果的数量为两个表的行数相乘

交叉连接的原理如下图所示:

太赞了!图解SQL基础知识,菜鸟也能看懂的SQL文章!

其他类型的连接还有半连接(SEMI JOIN)、反连接(ANTI JOIN)。


集合操作将两个集合合并成一个更大或更小的集合;连接查询将两个集合转换成一个更大或更小的集合,同时获得了一个更大的元素(更多的列)。很多时候集合操作都可以通过连接查询来实现,例如:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> department_id<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> departments<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">UNION</span><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> department_id<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> employees;</section>

等价于:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 58px;box-sizing: border-box !important;word-wrap: break-word !important;">COALESCE</span>(d.department_id, e.department_id)<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> departments d<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FULL</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">JOIN</span> employees e <span style="max-width: 100%;color: rgb(198, 120, 221);width: 15px;box-sizing: border-box !important;word-wrap: break-word !important;">ON</span> (e.department_id = d.department_id);</section>

我们已经介绍了许多查询的示例,接下来看看其他的数据操作。

07

DML


DML 表示数据操作语言,也就是插入、更新和删除。以下是一个插入语句示例:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">CREATE</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">TABLE</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">test</span>(<span style="max-width: 100%;color: rgb(198, 120, 221);width: 14px;box-sizing: border-box !important;word-wrap: break-word !important;">id</span> <span style="max-width: 100%;color: rgb(230, 192, 123);width: 21px;box-sizing: border-box !important;word-wrap: break-word !important;">int</span>);<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(92, 99, 112);width: 161px;font-style: italic;box-sizing: border-box !important;word-wrap: break-word !important;">-- MySQL、SQL Server 等</span><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">INSERT</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">INTO</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">test</span>(<span style="max-width: 100%;color: rgb(198, 120, 221);width: 14px;box-sizing: border-box !important;word-wrap: break-word !important;">id</span>) <span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">VALUES</span> (<span style="max-width: 100%;color: rgb(209, 154, 102);width: 8px;box-sizing: border-box !important;word-wrap: break-word !important;">1</span>),(<span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">2</span>),(<span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">3</span>);<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(92, 99, 112);width: 65px;font-style: italic;box-sizing: border-box !important;word-wrap: break-word !important;">-- Oracle</span><br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">INSERT</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">INTO</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">test</span>(<span style="max-width: 100%;color: rgb(198, 120, 221);width: 14px;box-sizing: border-box !important;word-wrap: break-word !important;">id</span>)<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />(<span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> <span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">1</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 14px;box-sizing: border-box !important;word-wrap: break-word !important;">AS</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 14px;box-sizing: border-box !important;word-wrap: break-word !important;">id</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> DUAL<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">UNION</span> ALL<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> <span style="max-width: 100%;color: rgb(209, 154, 102);width: 8px;box-sizing: border-box !important;word-wrap: break-word !important;">2</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> DUAL<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 36px;box-sizing: border-box !important;word-wrap: break-word !important;">UNION</span> ALL<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> <span style="max-width: 100%;color: rgb(209, 154, 102);width: 8px;box-sizing: border-box !important;word-wrap: break-word !important;">3</span> <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> DUAL);</section>

我们通过一个 INSERT 语句插入了 3 条记录,或者说是插入了一个包含 3 条记录的关系表。因为,UNION ALL 返回的是一个关系表。VALUES 同样是指定了一个关系表,在 SQL Server 和 PostgreSQL 中支持以下语句:

<section style="margin-right: 8px;margin-left: 8px;padding: 5.95px;max-width: 100%;border-top-left-radius: 4px;border-top-right-radius: 4px;border-bottom-right-radius: 4px;border-bottom-left-radius: 4px;font-size: 0.85em;background-color: rgb(40, 44, 52);color: rgb(171, 178, 191);overflow-x: auto;white-space: nowrap;box-sizing: border-box !important;word-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(198, 120, 221);width: 43px;box-sizing: border-box !important;word-wrap: break-word !important;">SELECT</span> *<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  /><span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">FROM</span> (<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />  <span style="max-width: 100%;color: rgb(198, 120, 221);width: 44px;box-sizing: border-box !important;word-wrap: break-word !important;">VALUES</span>(<span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">1</span>),(<span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">2</span>),(<span style="max-width: 100%;color: rgb(209, 154, 102);width: 7px;box-sizing: border-box !important;word-wrap: break-word !important;">3</span>)<br mpa-from-tpl="t" style="max-width: 100%;box-sizing: border-box !important;word-wrap: break-word !important;"  />) <span style="max-width: 100%;color: rgb(198, 120, 221);width: 29px;box-sizing: border-box !important;word-wrap: break-word !important;">test</span>(<span style="max-width: 100%;color: rgb(198, 120, 221);width: 15px;box-sizing: border-box !important;word-wrap: break-word !important;">id</span>);</section>

前面我们已经说过,FROM 之后是一个关系表,所以这里的 VALUES 也是一样。由于我们经常插入单条记录,并没有意识到实际上是以表为单位进行操作。

同样,UPDATE 和 DELETE 语句也都是以关系表为单位的操作;只不过我们习惯了说更新一行数据或者删除几条记录。

万水千山总是情,点个 👍 行不行


<section style="outline: 0px;max-width: 100%;color: rgb(62, 62, 62);line-height: 1.6;letter-spacing: 0px;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, "PingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor="rgb(36, 36, 36)" data-style="background-color: rgb(255, 255, 255); letter-spacing: 0.544px; font-size: 16px; text-align: center; color: rgba(230, 230, 230, 0.9) !important;" class="js_darkmode__45" data-darkmode-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgba(230, 230, 230, 0.9) !important;"><section data-tool="mdnice编辑器" data-website="https://www.mdnice.com" style="padding: 10px;outline: 0px;max-width: 100%;color: black;line-height: 1.6;letter-spacing: 0px;word-break: break-word;text-align: left;font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, "PingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;font-size: 16px;font-weight: 700;letter-spacing: 0.544px;widows: 1;caret-color: rgb(51, 51, 51);color: rgb(63, 63, 63);line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-role="outer" label="Powered by 135editor.com" data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(168, 168, 168)" data-darkmode-original-color="rgb(62, 62, 62)" data-style="max-width: 100%; font-family: -apple-system-font, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif; font-size: 16px; letter-spacing: 0.544px; white-space: normal; background-color: rgb(255, 255, 255); color: rgb(62, 62, 62); text-align: left; box-sizing: border-box !important; overflow-wrap: break-word !important;" style="outline: 0px;max-width: 100%;font-family: -apple-system-font, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;white-space: normal;color: rgb(62, 62, 62);box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-role="outer" label="Powered by 135editor.com" data-mpa-powered-by="yiban.io" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;font-size: 15px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-role="outer" label="Powered by 135editor.com" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;white-space: normal;font-size: 16px;font-family: 微软雅黑, "Helvetica Nue", sans-serif;word-spacing: 1.6px;text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="outline: 0px;max-width: 100%;line-height: 1.6;letter-spacing: 0px;font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor="rgb(36, 36, 36)" data-style="background-color: rgb(255, 255, 255); color: rgba(230, 230, 230, 0.9); letter-spacing: 0.544px; text-size-adjust: auto; font-size: 16px; text-align: center; word-spacing: 1.6px;" data-darkmode-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-bgcolor-15862411819306="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15862411819306="rgb(255, 255, 255)" data-darkmode-color-15862411819306="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15862411819306="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15862671987026="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15862671987026="rgb(255, 255, 255)" data-darkmode-color-15862671987026="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15862671987026="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15864118999603="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15864118999603="rgb(255, 255, 255)" data-darkmode-color-15864118999603="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15864118999603="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15864940858736="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15864940858736="rgb(255, 255, 255)" data-darkmode-color-15864940858736="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15864940858736="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15869584691402="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15869584691402="rgb(255, 255, 255)" data-darkmode-color-15869584691402="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15869584691402="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15869584691739="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15869584691739="rgb(255, 255, 255)" data-darkmode-color-15869584691739="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15869584691739="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15873005456075="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15873005456075="rgb(255, 255, 255)" data-darkmode-color-15873005456075="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15873005456075="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15873005456615="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15873005456615="rgb(255, 255, 255)" data-darkmode-color-15873005456615="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15873005456615="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15886839320558="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15886839320558="rgb(255, 255, 255)" data-darkmode-color-15886839320558="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15886839320558="rgba(230, 230, 230, 0.9)" data-darkmode-color-159923607914210="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-159923607914210="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-159923607914210="rgb(25, 25, 25)" data-darkmode-original-bgcolor-159923607914210="rgb(255, 255, 255)" data-darkmode-bgcolor-160008070860010="rgb(25, 25, 25)" data-darkmode-original-bgcolor-160008070860010="rgb(255, 255, 255)" data-darkmode-color-160008070860010="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-160008070860010="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-16072664870629="rgb(25, 25, 25)" data-darkmode-original-bgcolor-16072664870629="rgb(255, 255, 255)" data-darkmode-color-16072664870629="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-16072664870629="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-16073544711184="rgb(25, 25, 25)" data-darkmode-original-bgcolor-16073544711184="rgb(255, 255, 255)" data-darkmode-color-16073544711184="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-16073544711184="rgba(230, 230, 230, 0.9)" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor="rgb(36, 36, 36)" data-style="background-color: rgb(255, 255, 255); color: rgba(230, 230, 230, 0.9); letter-spacing: 0.544px; text-size-adjust: auto; font-size: 16px; text-align: center; word-spacing: 1.6px;" data-darkmode-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-color="rgba(230, 230, 230, 0.9)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-bgcolor-15862411819306="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15862411819306="rgb(255, 255, 255)" data-darkmode-color-15862411819306="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15862411819306="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15862671987026="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15862671987026="rgb(255, 255, 255)" data-darkmode-color-15862671987026="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15862671987026="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15864118999603="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15864118999603="rgb(255, 255, 255)" data-darkmode-color-15864118999603="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15864118999603="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15864940858736="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15864940858736="rgb(255, 255, 255)" data-darkmode-color-15864940858736="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15864940858736="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15869584691402="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15869584691402="rgb(255, 255, 255)" data-darkmode-color-15869584691402="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15869584691402="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15869584691739="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15869584691739="rgb(255, 255, 255)" data-darkmode-color-15869584691739="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15869584691739="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15873005456075="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15873005456075="rgb(255, 255, 255)" data-darkmode-color-15873005456075="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15873005456075="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15873005456615="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15873005456615="rgb(255, 255, 255)" data-darkmode-color-15873005456615="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15873005456615="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15886839320558="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15886839320558="rgb(255, 255, 255)" data-darkmode-color-15886839320558="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15886839320558="rgba(230, 230, 230, 0.9)" data-darkmode-color-159923607914210="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-159923607914210="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-159923607914210="rgb(25, 25, 25)" data-darkmode-original-bgcolor-159923607914210="rgb(255, 255, 255)" data-darkmode-bgcolor-160008070860010="rgb(25, 25, 25)" data-darkmode-original-bgcolor-160008070860010="rgb(255, 255, 255)" data-darkmode-color-160008070860010="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-160008070860010="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-16072664870629="rgb(25, 25, 25)" data-darkmode-original-bgcolor-16072664870629="rgb(255, 255, 255)" data-darkmode-color-16072664870629="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-16072664870629="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-16073544711184="rgb(25, 25, 25)" data-darkmode-original-bgcolor-16073544711184="rgb(255, 255, 255)" data-darkmode-color-16073544711184="rgba(163, 163, 163, 0.9)" data-darkmode-original-color-16073544711184="rgba(230, 230, 230, 0.9)" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><p style="outline: 0px;max-width: 100%;min-height: 1em;font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;white-space: normal;text-size-adjust: auto;text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><img class="__bg_gif" data-ratio="0.08658008658008658"  data-type="gif" data-w="462" data-width="100%" style="outline: 0px;color: rgb(0, 0, 0);font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, "PingFang SC", Cambria, Cochin, Georgia, Times, "Times New Roman", serif;display: block;box-sizing: border-box !important;overflow-wrap: break-word !important;visibility: visible !important;width: 578px !important;" src="https://www.zkxjob.com/wp-content/uploads/2022/07/wxsync-2022-07-ae45c8833e6e59cceba3c2fda2df37d1.gif"  /></p><p style="outline: 0px;max-width: 100%;min-height: 1em;font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;white-space: normal;text-size-adjust: auto;text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"  /></p>


推荐阅读:

入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径


<p style="outline: 0px;max-width: 100%;min-height: 1em;font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;white-space: normal;text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;color: rgb(217, 33, 66);box-sizing: border-box !important;overflow-wrap: break-word !important;">量化</span><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;box-sizing: border-box !important;overflow-wrap: break-word !important;">: </span><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;text-decoration: underline;color: rgb(2, 30, 170);font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">定投基金到底能赚多少钱?</span><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;color: rgb(2, 30, 170);font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">  | </span><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;text-decoration: underline;color: rgb(2, 30, 170);font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">我用Python对去年800只基金的数据分析</span><span style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;word-spacing: 1.6px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">  </span></p><p style="outline: 0px;max-width: 100%;min-height: 1em;font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;white-space: normal;text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"  /></p>

干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影


趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!


AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影


小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!


年度爆款文案

  • 1).卧槽!Pdf转Word用Python轻松搞定

  • 2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃

  • 3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密 

  • 4).80行代码!用Python做一个哆来A梦分身 

  • 5).你必须掌握的20个python代码,短小精悍,用处无穷 

  • 6).30个Python奇淫技巧集 

  • 7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货 

  • 8).再见Python!我要学Go了!2500字深度分析!

  • 9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片


<section data-mpa-template="t" mpa-from-tpl="t" data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(168, 168, 168)" data-darkmode-original-color-15923650965579="rgb(62, 62, 62)" data-style="color: rgb(62, 62, 62); font-size: 15px; letter-spacing: 0.544px; background-color: rgb(255, 255, 255); font-family: monospace; text-align: left; widows: 1; word-spacing: 2px; caret-color: rgb(255, 0, 0); white-space: pre-wrap;" style="outline: 0px;max-width: 100%;font-size: 15px;letter-spacing: 0.544px;word-spacing: 2px;caret-color: rgb(255, 0, 0);color: rgb(62, 62, 62);white-space: pre-wrap;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section mpa-from-tpl="t" data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(168, 168, 168)" data-darkmode-original-color-15923650965579="rgb(62, 62, 62)" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(167, 167, 167)" data-darkmode-original-color-15923650965579="rgb(63, 63, 63)" data-style="letter-spacing: 0.544px; font-size: 16px; color: rgb(63, 63, 63); word-spacing: 1px; line-height: inherit;" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;font-size: 16px;color: rgb(63, 63, 63);word-spacing: 1px;line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-mpa-template-id="1250" data-mpa-color="#ffffff" data-mpa-category="divider" data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(230, 230, 230)" data-darkmode-original-color="rgb(0, 0, 0)" data-style="margin-right: 0.5em; margin-left: 0.5em; white-space: normal; font-family: -apple-system-font, system-ui, 'Helvetica Neue', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei UI', 'Microsoft YaHei', Arial, sans-serif; color: rgb(0, 0, 0); letter-spacing: 0px; word-spacing: 2px;" data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(230, 230, 230)" data-darkmode-original-color-15923650965579="rgb(0, 0, 0)" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(167, 167, 167)" data-darkmode-original-color-15923650965579="rgb(63, 63, 63)" data-style="letter-spacing: 0.544px; font-size: 16px; color: rgb(63, 63, 63); word-spacing: 1px; line-height: inherit;" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-mpa-template-id="1250" data-mpa-color="#ffffff" data-mpa-category="divider" data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(230, 230, 230)" data-darkmode-original-color="rgb(0, 0, 0)" data-style="margin-right: 0.5em; margin-left: 0.5em; white-space: normal; font-family: -apple-system-font, system-ui, 'Helvetica Neue', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei UI', 'Microsoft YaHei', Arial, sans-serif; color: rgb(0, 0, 0); letter-spacing: 0px; word-spacing: 2px;" data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(230, 230, 230)" data-darkmode-original-color-15923650965579="rgb(0, 0, 0)" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(230, 230, 230)" data-darkmode-original-color="rgb(0, 0, 0)" data-darkmode-bgcolor-15923650965579="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15923650965579="rgb(255, 255, 255)" data-darkmode-color-15923650965579="rgb(230, 230, 230)" data-darkmode-original-color-15923650965579="rgb(0, 0, 0)" style="margin-right: 0em;margin-left: 0em;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-right: 0.5em;margin-left: 0.5em;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-tool="mdnice编辑器" data-website="https://www.mdnice.com" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(168, 168, 168)" data-darkmode-original-color="rgb(62, 62, 62)" data-style="letter-spacing: 0.544px; font-weight: 700; text-align: -webkit-center; background-color: rgb(255, 255, 255); font-size: 16px; color: rgb(62, 62, 62); widows: 1; word-spacing: 2px;" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;text-align: center;color: rgb(62, 62, 62);box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-tool="mdnice编辑器" data-website="https://www.mdnice.com" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor="rgb(36, 36, 36)" data-darkmode-original-bgcolor="rgb(255, 255, 255)" data-darkmode-color="rgb(168, 168, 168)" data-darkmode-original-color="rgb(62, 62, 62)" data-style="letter-spacing: 0.544px; font-weight: 700; text-align: -webkit-center; background-color: rgb(255, 255, 255); font-size: 16px; color: rgb(62, 62, 62); widows: 1; word-spacing: 2px;" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><h1 style="outline: 0px;max-width: 100%;white-space: pre-wrap;letter-spacing: 0.544px;font-family: 微软雅黑;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-mpa-template="t" mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-id="94086" data-color="#276ca3" data-tools="135编辑器" mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;color: rgb(63, 63, 63);letter-spacing: 0.544px;line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-mpa-template="t" mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-id="94086" data-color="#276ca3" data-tools="135编辑器" mpa-from-tpl="t" style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section mpa-from-tpl="t" style="outline: 0px;max-width: 100%;display: inline-block;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;line-height: inherit;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-style="letter-spacing: 0.544px; background-color: rgb(255, 255, 255); text-align: center; color: rgba(230, 230, 230, 0.9); font-size: 16px; line-height: 25.6px; overflow-wrap: break-word !important;" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15882396318564="rgba(230, 230, 230, 0.9)" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgba(230, 230, 230, 0.9)" data-darkmode-original-color-15900529136199="rgba(230, 230, 230, 0.9)" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;text-align: center;color: rgba(230, 230, 230, 0.9);line-height: 25.6px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" style="outline: 0px;max-width: 100%;display: inline-block;clear: both;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-tools="135编辑器" data-id="91842" data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" style="outline: 0px;max-width: 100%;letter-spacing: 0.544px;border-width: 0px;border-style: none;border-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" style="outline: 0px;max-width: 100%;display: inline-block;clear: both;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-brushtype="text" data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgimage-15860613985508="1" data-style="padding: 18px 15px 20px 10px; color: rgb(86, 146, 214); text-align: center; letter-spacing: 1.5px; background-image: url('https://www.zkxjob.com/wp-content/uploads/2022/07/wxsync-2022-07-a2a8a5e1e58f30392066a170034ee027.png'); background-size: 100% 100%; background-repeat: no-repeat; overflow-wrap: break-word !important;" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgimage-15870356070738="1" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgimage-15870356071023="1" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgimage-15882384789136="1" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgimage-15882396318564="1" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" data-darkmode-bgimage-15900529136199="1" style="padding: 18px 15px 20px 10px;outline: 0px;max-width: 100%;background-size: 100% 100%;background-image: url('https://www.zkxjob.com/wp-content/uploads/2022/07/wxsync-2022-07-a2a8a5e1e58f30392066a170034ee027.png');color: rgb(86, 146, 214);letter-spacing: 1.5px;background-repeat: no-repeat;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgimage-15860613985508="1" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgimage-15870356070738="1" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgimage-15870356071023="1" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgimage-15882384789136="1" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgimage-15882396318564="1" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" data-darkmode-bgimage-15900529136199="1" style="outline: 0px;max-width: 100%;display: flex;justify-content: center;align-items: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(230, 230, 230)" data-darkmode-original-color-15860613985508="rgb(0, 0, 0)" data-darkmode-bgimage-15860613985508="1" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(230, 230, 230)" data-darkmode-original-color-15870356070738="rgb(0, 0, 0)" data-darkmode-bgimage-15870356070738="1" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(230, 230, 230)" data-darkmode-original-color-15870356071023="rgb(0, 0, 0)" data-darkmode-bgimage-15870356071023="1" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(230, 230, 230)" data-darkmode-original-color-15882384789136="rgb(0, 0, 0)" data-darkmode-bgimage-15882384789136="1" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(230, 230, 230)" data-darkmode-original-color-15882396318564="rgb(0, 0, 0)" data-darkmode-bgimage-15882396318564="1" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(230, 230, 230)" data-darkmode-original-color-15900529136199="rgb(0, 0, 0)" data-darkmode-bgimage-15900529136199="1" style="margin-left: 2px;outline: 0px;max-width: 100%;width: 20px;box-sizing: border-box !important;overflow-wrap: break-word !important;"></section><section data-brushtype="text" data-darkmode-bgcolor-15860613985508="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15860613985508="rgb(255, 255, 255)" data-darkmode-color-15860613985508="rgb(51, 51, 51)" data-darkmode-original-color-15860613985508="rgb(51, 51, 51)" data-darkmode-bgimage-15860613985508="1" data-darkmode-bgcolor-15870356070738="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356070738="rgb(255, 255, 255)" data-darkmode-color-15870356070738="rgb(51, 51, 51)" data-darkmode-original-color-15870356070738="rgb(51, 51, 51)" data-darkmode-bgimage-15870356070738="1" data-darkmode-bgcolor-15870356071023="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15870356071023="rgb(255, 255, 255)" data-darkmode-color-15870356071023="rgb(51, 51, 51)" data-darkmode-original-color-15870356071023="rgb(51, 51, 51)" data-darkmode-bgimage-15870356071023="1" data-darkmode-bgcolor-15882384789136="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882384789136="rgb(255, 255, 255)" data-darkmode-color-15882384789136="rgb(51, 51, 51)" data-darkmode-original-color-15882384789136="rgb(51, 51, 51)" data-darkmode-bgimage-15882384789136="1" data-darkmode-bgcolor-15882396318564="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15882396318564="rgb(255, 255, 255)" data-darkmode-color-15882396318564="rgb(51, 51, 51)" data-darkmode-original-color-15882396318564="rgb(51, 51, 51)" data-darkmode-bgimage-15882396318564="1" data-darkmode-bgcolor-15900529136199="rgb(36, 36, 36)" data-darkmode-original-bgcolor-15900529136199="rgb(255, 255, 255)" data-darkmode-color-15900529136199="rgb(51, 51, 51)" data-darkmode-original-color-15900529136199="rgb(51, 51, 51)" data-darkmode-bgimage-15900529136199="1" style="outline: 0px;max-width: 100%;font-size: 14px;color: rgb(51, 51, 51);text-align: left;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="outline: 0px;max-width: 100%;font-family: 楷体, 楷体_GB2312, SimKai;white-space: pre-wrap;font-size: 12px;box-sizing: border-box !important;overflow-wrap: break-word !important;">点阅读原文,领AI全套资料!</span></section></section></section></section></section></section></section>

本篇文章来源于: 菜鸟学Python

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

你可能也喜欢

热评文章

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享