Skip to content

零散记录(记录学习时产生的与sql相关的零散观念) #3

Description

@mind1949
  • select时查询出的是数据集合而不是物理的数据库表, 通过这样可以很容易的理解自连接, 因为产生了两个相同的数据集合;
  • sql唯一能够处理的数据结构是集合, 无论数据是以表的形式存储, 还是以视图的形式存储;
  • 应当尝试从集合的角度去考虑sql语句, 而不是从表的角度思考sql语句, 我以前通过表的方式可视化理解sql语句的方式是不正确的;
  • 每一小节都要自己先创建测试数据, 然后再数据库中设计跑一下, 这样才能起到检测/ 练习的效果;
  • 自连接相较于普通的连接, 性能开销更大, 所以自连接的列推荐使用主键或者在相关列上建立索引;
  • 因为在数据库中存在null会引发诸多混乱, 所以最好在每列都加上not null限制
  • having与where都是进行过滤, 但是where是通过对集合的列进行限制完成过滤, 而having是通过对结合本身的性质进行限制完成过滤;

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions