MySQL中的SQL语句执行顺序,通常指的是查询(SELECT)语句的各个组成部分的逻辑执行顺序。虽然我们按照一定的语法顺序编写SQL语句,但是数据库系统在查询优化和执行过程中,并不是按照我们编写的顺序执行的。

以下是一个典型的SELECT语句的编写顺序:

1
2
3
4
5
6
7
1 SELECT
2 FROM
3 WHERE
4 GROUP BY
5 HAVING
6 ORDER BY
7 LIMIT

然而,MySQL实际执行这些操作的顺序大致如下:

  1. FROM:确定要从哪个表(或者多个表的连接)中检索数据。
  2. ON:应用JOIN条件,用于多个表的情况。
  3. JOIN:如果有多个表需要连接,会在这个阶段进行。
  4. WHERE:根据指定的条件对数据进行过滤。
  5. GROUP BY:将数据分组,通常用于聚合函数(如COUNT, SUM, AVG等)。
  6. HAVING:对分组后的结果进行过滤,通常与GROUP BY联合使用。
  7. SELECT:选取表中的特定列,如果有表达式或者聚合函数,也会在这一步计算。
  8. DISTINCT:去除重复的行,保证查询结果的唯一性。
  9. ORDER BY:对查询结果进行排序,这一步通常在所有的行被选取之后进行。
  10. LIMIT:限制查询结果的数量,通常用于分页。

img

需要注意的是,执行顺序并不是绝对固定的,数据库优化器可能会根据各种因素(如索引的存在,表的大小等)对执行计划进行调整,以提高查询的效率。因此,上述顺序应当被视为一种逻辑执行顺序,而不是实际的物理执行顺序。

一个模型的好坏,要看它的准召率是否高。

定义:准是准确率,召是召回率。

假设我们在验证一个反垃圾模型,1000个样本里面有500个垃圾,我们抓出了1个样本,且这个样本为垃圾。

1
2
3
4
正确率 = 提取出的正确信息条数 / 提取出的信息条数
召回率 = 提取出的正确信息条数 / 样本中的信息条数
那么准确率 1/1=100%
而召回率 1/500=0.2%

由此可见这个模型是有问题的,虽然抓得对,但是垃圾抓得不全。

再举一个例子,假设世界上只有一个脏话:“傻逼”,然后模型的规则是,只要包含“傻逼”两个字,就是垃圾评论,那么你的准确率和召回率都是100%,这个模型一个字好。

结果,键盘侠发现了,他把“傻逼”改成了“煞笔”,完蛋了,你的模型找不出这个垃圾,但是此时,你的模型的准确率,还是100%,可你的召回率不堪入目,因为漏掉了“煞笔”这类垃圾。

1.模拟信号的数字化方法PCM

1.1 PCM的定义

最基本的概念:模拟信号是指随时间连续变化的物理量,将声音在磁带上记录成磁场强度的变化或在黑胶唱片上记录成沟槽大小的变化就是以模拟方式进行存储。数字信号则是离散的,计算机中的数据都是以数字方式存储的。模拟信号和数字信号可以相互转换,这里我们讨论的就是把模拟信号转换成数字信号。

脉冲编码调制(Pulse Code Modulation, PCM)是一种模拟信号的数字化方法。它是最常用、最简单的波形编码方式,但是也存在其它方法,比如脉冲密度调制(Pulse Density Modulation, PDM)。

阅读全文 »
0%