zoukankan      html  css  js  c++  java
  • 阅读阿里文档总结————Mysql数据库篇

    一:建表规范

    1.针对于任何字段如果为非负数,必须是 unsigned;

    2.表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除; (1为是;0为否)

    3.主键索引名为 pk_字段名;唯一索引名为 uk_字段名;普通索引名则为 idx_字段名;

    4.小数类型为 decimal,禁止使用 float 和 double;

    5.如果存储的字符串长度几乎相等,使用 char 定长字符串类型

    6.表必备三字段:id, gmt_create, gmt_modified

    7.合适的字符存储长度,不但节约数据库表空间、节约索引存储,更重要的是提升检 索速度;

    8.利用覆盖索引来进行查询操作,避免回表;

    9.建组合索引的时候,区分度最高的在最左边;

    10.防止因字段类型不同造成的隐式转换,导致索引失效。

    二:SQL语句

    1.不要使用 count(列名)或 count(常量)来替代 count(*),count(*)是 SQL92 定义的 标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关

     解释:count(*)会统计值为 NULL 的行,而 count(列名)不会统计此列为 NULL 值的行

    2.count(distinct col) 计算该列除 NULL 之外的不重复行数,注意 count(distinct col1, col2) 如果其中一列全为 NULL,那么即使另一列有不同的值,也返回为 0

    3.当某一列的值全是 NULL 时,count(col)的返回结果为 0,但 sum(col)的返回结果为 NULL,因此使用 sum()时需注意 NPE 问题

      可以使用如下方式来避免 sum 的 NPE 问题:SELECT IF(ISNULL(SUM(g)),0,SUM(g)) FROM table

    我们曾如此渴望生命的波澜,到后来才发现,人生最曼妙的风景是内心的淡定与从容
  • 相关阅读:
    halcon中variation_model_single实例注释.
    vc 实现打印功能
    用VisualC++建立SOAP客户端应用(一)
    第六章
    OpenCV】透视变换 Perspective Transformation(续)
    第六章
    OpenCV仿射变换+投射变换+单应性矩阵
    【最新图文教程】WinCE5.0中文模拟器SDK(VS2008)的配置
    Visual Studio 2008 使用 WinCE 5.0 Emulator
    Win32 CMD批处理命令
  • 原文地址:https://www.cnblogs.com/code-sayhi/p/9865695.html
Copyright © 2011-2022 走看看