精华内容
下载资源
问答
  • 正如字面意思,本课程讲解的是一个真正意义上的、企业级的项目实战,主要介绍了企业级应用系统中后端应用权限的管理,其中主要涵盖了六大核心业务模块、十几张数据库。 其中的核心业务模块主要包括用户模块、部门...
  • 本课程主要讲述Android开发Java的基础到核心的学习,包括:变量、操作符和表达式、语句、数组、类的方法、访问控制与封装、继承、常见工具类、链表、实际操作综合示例。课程由浅到深,实用性强。
  • 驱动大

    千次阅读 2019-11-29 09:08:36
    在数据库查询中,经常用到关联,听到最多的规则是 "小驱动大"。那么问题来了 什么是小驱动大 ? 为什么要用小驱动大 ? 怎么区分那个是驱动与被驱动 ? JOIN查询如何选择驱动与被驱动 ? ...

    前言

    在数据库查询中,经常用到表关联,听到最多的规则是 “小表驱动大表”。那么问题来了

    • 什么是小表驱动大表 ?
    • 为什么要用小表驱动大表 ?
    • 怎么区分那个是驱动表与被驱动表 ?
    • JOIN查询如何选择驱动表与被驱动表 ?
    • 索引应该建在驱动表还是被驱动表 ?

    1.什么是小表驱动大表 ?

    小表驱动大表指的是用小的数据集驱动大得数据集

    2.为什么要用小表驱动大表 ?

    例如:现有两个表A与B ,表A有200条数据,表B有20万条数据 ;
    按照循环的概念举个例子

    • 小表驱动大表 > A驱动表,B被驱动表
     for(200){
       for(20万条){
         ...
       }
     }
    
    • 大表驱动小表 > B驱动表,A被驱动表
     for(20){
       for(200){
        ...
       }
     }
    

    总结:

    • 如果小的循环在外层,对于表连接来说就只连接200次 ;
    • 如果大的循环在外层,则需要进行20万次表连接,从而浪费资源,增加消耗 ;

    综上:
    小表驱动大表的主要目的是通过**减少表连接创建的次数,**加快查询速度 。

    3.怎么区分那个是驱动表与被驱动表 ?

    通过EXPLAIN查看SQL语句的执行计划可以判断在谁是驱动表,EXPLAIN语句分析出来的第一行的表即是驱动表 ;

    4.JOIN查询如何选择驱动表与被驱动表 ?

    在JOIN查询中经常用到的 inner join、left join、right join
    问题解答:
    1.当使用left join时,左表是驱动表,右表是被驱动表 ;
    2.当使用right join时,右表时驱动表,左表是被驱动表 ;
    3.当使用inner join时,mysql会选择数据量比较小的表作为驱动表,大表作为被驱动表 ;

    测试结论:
    测试环境配置:MYSQL 5.7
    数据准备:
    创建两张测试表 大表 user_big_info ,测试数据400万条, 小表user_small_info ,测试数据200万条 ;

    CREATE TABLE `user_small_info` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `user_id` varchar(32) NOT NULL COMMENT '用户唯一标识',
      `username` varchar(32) NOT NULL DEFAULT '' COMMENT '用户名',
      `password` varchar(255) NOT NULL DEFAULT '' COMMENT '密码',
      `real_name` varchar(32) NOT NULL DEFAULT '' COMMENT '真实姓名',
      `phone` varchar(32) NOT NULL DEFAULT '' COMMENT '手机号码',
      `remarks` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
      `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态 1-启用 2-禁用 ',
      `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
      `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
      PRIMARY KEY (`id`),
      UNIQUE KEY `uniq_user_id` (`user_id`) USING BTREE,
      KEY `idx_username` (`username`) USING BTREE
    ) ENGINE=InnoDB AUTO_INCREMENT=3000001 DEFAULT CHARSET=utf8 COMMENT='用户表';
    

    LEFT JOIN 测试
    小表驱动大表
    image.png

    执行时间:18.141s ,由于使用左连接以小表为主表所以,返回行数:200万
    执行计划
    image.png

    大表驱动小表
    image.png

    执行时间:25.949s ,由于使用左连接以大表为主表所以,返回行数: 400万
    执行计划
    image.png

    结论:

    • 当使用left join时,左表是驱动表,右表是被驱动表 ; ;
    • 在执行效率上,小表驱动大表优于大表驱动小表 ;
    • 驱动表索引没有生效,被驱动表索引有效 ;

    INNER JOIN 测试
    小表驱动大表
    image.png

    执行时间:18.660s ,等值连接返回行数:200万

    执行计划
    image.png

    大表驱动小表
    image.png

    执行时间:19.060s ,等值连接返回行数:200万

    执行计划
    image.png


    结论:

    • 当使用inner join时,数据库会选择数据量比较小的表作为驱动表,大表作为被驱动表 ;
    • 在执行效率上,那个作为主表关系不大,执行效率差距不大 ;
    • 驱动表索引没有生效,被驱动表索引有效 ;
    展开全文
  • navicat for mysql截断是什么意思

    千次阅读 2019-01-18 15:38:55
    会保留结构,快速清空数据,不需要记日志 截断是一条SQL语句:truncate table 表名,其含义是快速将中所有数据删除,与delete语句不同之处在于,truncate语句不会写日志,所以速度极快,尤其适合清空存有海量...

    会保留表结构,快速清空数据,不需要记日志

    截断表是一条SQL语句:truncate table 表名,其含义是快速将表中所有数据删除,与delete语句不同之处在于,truncate语句不会写日志,所以速度极快,尤其适合清空存有海量数据的表格,而delete语句虽然也能将表中的数据删除,但删除的过程会计入日志,速度较慢。
    delete语句可以有选择的删除表中的数据,而truncate语句只能清空表中的所有数据,可以根据自己的需要选用

    展开全文
  • 本文出自【我是干勾鱼的博客】 ...事实:是数据聚合后依据某个维度生成的结果,是具体的统计。 维与与事实的概念更多使用在数据仓库中,两者相互对应。一个经典的例子在销售领域,如...

    转载请注明出处:https://yuhaidong.blog.csdn.net/article/details/104992257
    本文出自【我是干勾鱼的博客

    维表(Dimension Table,也称维度表):是对数据进行分析时所用的一个量。

    事实表:是数据聚合后依据某个维度生成的结果表,是具体的统计表。

    维表与与事实表的概念更多使用在数据仓库中,两者相互对应。一个经典的例子在销售领域,如下:

    • 销售统计表:就是一个 事实表,里面统计数据的来源离不开 “商品价格表”。

    • 商品价格表 :是销售统计的一个维度表。

    事实数据维度数据通常需要依据具体的主题问题而定。事实表用来存储事实的度量及指向各个维的外键值。维表用来保存该维的元数据。

    参考:

    什么是Dimension table(维表)

    维表和事实表的区别【转】

    展开全文
  • emp 雇员 属性英文名 属性中文名 empno 雇员编号 ename 雇员姓名 job 雇员职位 mgr 雇员对应的领导的编号 hiredate 雇员的雇佣日期 sal 雇员的基本工资 ...

    emp 雇员表

    属性英文名属性中文名
    empno雇员编号
    ename雇员姓名
    job雇员职位
    mgr雇员对应的领导的编号
    hiredate雇员的雇佣日期
    sal雇员的基本工资
    comm奖金或补助
    deptno所在部门

    dept 部门表

    属性英文名属性中文名
    deptno部门编号
    dname部门名称
    loc部门所在位置

    salgrade 工资等级表

    属性英文名属性中文名
    grade工资等级
    losal此等级的最低工资
    hisal此等级的最高工资

    bonus 工资表

    属性英文名属性中文名
    ename雇员名字
    job雇员职位
    sal雇员工资
    comm雇员资金
    展开全文
  • 什么是全量表,增量,快照,拉链

    万次阅读 多人点赞 2019-08-24 11:52:56
    这一篇文章我们的目的是搞懂这四种的概念,闲话不多说,直接看文字。 全量表 全量表没有分区,中的数据是前一天的所有数据,比如说今天是24号,那么全量表里面拥有的数据是23号的所有数据,每次往全量表里面...
  • 什么是回

    万次阅读 多人点赞 2020-08-06 09:06:06
    就是先通过数据库索引扫描出数据所在的行,再通过行主键id取出索引中未提供的数据,即基于非主键索引的查询需要多扫描一棵索引树. 因此,可以通过索引先查询出id字段,再通过主键id字段,查询行中的字段数据,即...
  • 仪表识别之数字识别

    万次阅读 热门讨论 2018-08-25 12:33:26
    1介绍  好久没有写博客了,主要是去学习深度学习去了,用深度学习解决了人脸检测,人脸对齐,人脸识别三种技术,再写相关的博客感觉没什么意思,所以荒废了许久...这里介绍仪表识别中数码识别的成果。  ...
  • PT100热电阻温度阻值对应

    万次阅读 2020-07-27 12:45:52
    PT100有一个标准的阻值温度对应,在0度的时候,它的电阻值在100R,在常温25℃,它的电阻值是109.73R,我们可以通过测量它的电阻变化,就可以换算成温度,最简单的做法就是万用表测它的电阻值,然后查它的电阻温度...
  • 定义: 左联:首先取出a中所有数据,然后再加上与a,b匹配的的数据 内联:两个a,b相连接,要取出id相同的字段 ...left join左联接:查找左(主)为查找全集,右(子)存在的关联出来,不存在的为NUL
  • 数据仓库中的增量,全量表,快照,拉链

    万次阅读 多人点赞 2019-04-17 14:25:43
    1、增量 2、全量 3、快照 4、拉链 1、增量 增量:新增数据,增量数据是上次导出之后的新数据。 (1)记录每次增加的量,而不是总量; (2)增量,只报变化量,无变化不用报 (3)每天一个...
  • kettle 输入、输出

    千次阅读 2018-11-23 12:03:58
    (1) 输入 —输出 注意点: 1、 命名步骤名称 2、 选择 数据源 3、 选择 4、 特殊字段的一些处理 5、 可以直接使用原id 生成row_guid,根据实际修改sql语句。 6、 限制改成 0 (默认是1000,即只提交1000...
  • 和纵的概念以及应用场景

    千次阅读 2018-03-28 16:42:49
    就是普通的建表方式,如一个结构为:主键、字段1、字段2、字段3。。。 如果变成纵后,则结构为: 主键、字段代码、字段值。而字段代码则为字段1、字段2、字段3。 具体为电信行业的例子。以用户帐单为例...
  • 有学生Student, 课程Course, 学生选课表StudentCourse 请设计上面三个,并画出实体关系图。 请写出建表语句,创建上面三个。 请写出插入语句,插入某学生选的一门课。 有个学生的名字写错了,请写出更新...
  • 什么是顺序

    千次阅读 2019-08-25 00:43:07
    顺序 在程序中,经常需要将一组(通常是同为某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。一组数据中包含的元素个数可能发生变化(可以增加或删除元素)。 对于...
  • 递增有序顺序插入元素的算法

    千次阅读 多人点赞 2019-03-23 11:10:28
    设顺序va中的数据元素递增有序,现将x插入到顺序的适当位置,以保持该顺序依然递增有序。 算法思想: 1.判断该顺序是否已满 2.查找x在顺序a.elem[a.length]中的插入位置 i。 3.在查找到x的位置之后,...
  • MySQL基本操作一:数据库和

    万次阅读 多人点赞 2018-05-23 21:55:49
    本章,主要就数据库和的基本操作作以总结。 需要事先说明的一点是,我写的所有MySQL的代码将采用大写形式。虽然说至少在MySQL环境,SQL语句的大小写并不会影响代码运行结果,但是,有同行讲到,SQL语句大写比...
  • 【顺序】SqList *&L是什么意思

    千次阅读 多人点赞 2021-02-20 17:20:13
    //顺序基本运算算法 #include <stdio.h> #include <malloc.h> #define MaxSize 50 typedef int ElemType; typedef struct { ElemType data[MaxSize]; //存放顺序元素 int length; //存放...
  • Oracle数据库临时

    千次阅读 2019-04-05 00:07:32
    我们在创建数据的时候,若没有特殊的指明,那么我们创建的是一个永久的关系型表格,也就是说,这个表格中对应的数据,除非是我们显示的删除的话,中的数据是永远都存在的。相对应的,在Oracle数据库中还有一...
  • 千次阅读 2019-05-22 13:10:29
    在OpenFlow交换机的运行过程中,其数据转发的依据就是流。 所谓流,其实可被视作是OpenFlow对网络设备的数据转发功能的一种抽象。在传统网络设备中,交换机和路由器的数据转发需要依赖设备中保存的二层M...
  • 字典设计

    万次阅读 多人点赞 2018-08-09 09:37:44
    本篇的字典主要针对前端展示多层目录数据的一个设计。 相信我们在金山毒霸上看电影时,会有很多电影分类,可以更具国家的不同,年限的不同亦或电影种类的不同去查询自己想要看的电影类型,那么这么多分类在设计...
  • mysql索引回

    万次阅读 多人点赞 2019-02-18 15:23:22
    先索引扫描,再通过rowid去取索引中未能提供的数据,即为回。 如果语句是 select * from T where ID=500,即主键查询方式,则只需要搜索 ID 这棵 B+ 树; 如果语句是 select * from T where k=5,即普通索引查询...
  • 视频教程第二弹,快速理清TDengine中的抽象概念,并学会规划生产...本文我们以智能电表(采集量为电流、电压)为例,探讨如何在TDengine中建库、建超级、建表。 假设每个智能电表采集电流、电压两个量,其采集的数据如
  • 在图中任何两个顶点之间都可能存在联系,所以图的存储结构应该需要...常用的存储结构有邻接矩阵、邻接(逆邻接)、十字链、邻接多重、 边集数组。那么本博文将带你就 “邻接(逆邻接)” 来窥探一二。。。
  • 【C】关于打法的简单介绍

    千次阅读 多人点赞 2019-01-05 15:56:09
    本文只是简单介绍打法,各位大佬可以忽略本文,如果有大佬对本文有修改意见,欢迎评论 还是先上OJ题目 这是一道浙江工业大学的OJ题目,由于是内网链接,这里只能给出题号了:1677(题目有一定的修改,主要是为了...
  • ORACLE 空间操作和的删除(一)

    千次阅读 2018-03-28 23:17:48
    最近在用IMP 命令导入dmp数据的时候,发现空间无法扩展,一查,才发现空间SYSTEM已经使用了31.2G。 经过查找资料,总结如下: 1.一般不在SYSTEM空间存放业务数据; 2.SYSTEM空间最大值是32G;-----所有...
  • 编译原理之符号

    千次阅读 2019-06-20 12:24:56
    文章目录一、符号的作用是什么1. 收集符号属性2. 上下文语义的合法性检查的依据3. 作为目标代码生成阶段地址分配的依据二、符号的组织方式1. 符号分为几大栏,主键是什么?2. 什么是各项,各栏等长,说明利弊?...
  • 什么是mysql锁

    千次阅读 2020-04-12 20:32:48
    为何会锁 首先我们了解一下数据库查询机制,首先我们用工具进行连接查询时,会创建一个connection,此时数据库会将查询语句解析成一棵“树”,各个引擎底层的结构不一样,mysql的话在innodb用的是b-tree,俗称b+...
  • GDT

    千次阅读 2019-04-20 00:35:47
    gdt在x86架构中用来存储内存的分段信息,通过段选择子进行访问,的大小=0x10000=65536字节,每个项占8字节,第一个项为空,不使用,因此一共有8191个可用项。项结构如下 (图片来自...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 733,680
精华内容 293,472
关键字:

下表意思