1,连接类型及差异

INNER JOIN:结果集只有配对成功的数据,即不包含左表或右表为空的情况;

OUTER JOIN:

LEFT JOIN:结果包含左表的所有记录,右表不能成功匹配的显示NULL

RIGHT JOIN:结果包含表右的所有记录,左表不能成功匹配的显示NULL

FULL OUTER JOIN:这种连接会合并LEFT JOIN 和 RIGHT JOIN的结果,不论是否匹配,都会放到结果集中。

2,反规范化

反规范化是一种数据库优化技术,在一个或多个表中加入冗余数据。在传统的规范化数据库中,力求冗余最小,比如,course和teacher表中,每个course对应,允许yi个teacherID,但不存储teacherName,如果要获取所有course的teacherName,需要连接两个表。如果表很大的话,需要花费很长时间。因此,在反规范时允许一定的冗余。,

反规范化的优点:连接操作少,检索更快;需要查找的表少,检索简单;缺点:更新和插入开销大;更新和插入的代码更复杂;数据可能不一致;冗余意味着更大的存储空间

最新文章

  1. AlloyTouch 0.2.0发布--鱼和熊掌兼得
  2. AngularJS时间轴指令
  3. Flexigrid从对象中加载数据
  4. js学习随笔
  5. C#的linq在winform中简单应用
  6. PCL -语法错误:“::” error C2589: “(”:“::”右边的非法标记
  7. java bean、List、数组、map和Json的相互转化
  8. [转]大型 JavaScript 应用架构中的模式
  9. Python轻量Web框架Flask使用
  10. App 上线流程
  11. 1.4Linux内核版本号的定义规则
  12. ElastciSearch常用APi
  13. devstack安装使用openstack常见问题与解决的方法
  14. Python实战之IO多路复用select实例
  15. Linux安装Oracle JDK替换OpenJDK详解
  16. date_default_timezone_set()问题解决方案(PHP5.3以上的)
  17. LeetCode: 103_Binary Tree Zigzag Level Order Traversal | 二叉树Zigzag层次遍历 | Medium
  18. SpringBoot之profile的使用
  19. 前端项目模块化的实践2:使用 Webpack 打包基础设施代码
  20. 《FPGA全程进阶---实战演练》第十章 数码管实验

热门文章

  1. Flutter 拖拽排序组件 ReorderableListView
  2. 必备技能六、Vue中实现全局方法
  3. UICollectionViewCell设置阴影
  4. docker学习之路
  5. centeos安装Anconda3
  6. go源码分析(五) 获取函数名和调用者的函数名
  7. 关于ATL生成COM注册失败解决方法
  8. SpringCloud系列之配置中心(Config)使用说明
  9. angular自启动过程
  10. Java基础语法(2)-变量