zoukankan      html  css  js  c++  java
  • mysql-2分组查询&多表连接

    DQL
    排序
    通过ORDER BY子句,可以将查询出的结果进行排序(排序只是显示方式,不会影响数据库中数据原来的顺序)
    SELECT 字段名 FROM 表名 WHERE 字段=值 ORDER BY 字段名 [ASC|DESC];
    ASC: 升序, 默认不写是升序
    DESC: 降序
    不写默认升序
     
    多个字段之间用逗号隔开, `SELECT 字段名 FROM 表名 WHERE 字段=值 ORDER BY 字段名1 [ASC|DESC], 字段名2 [ASC|DESC];`
    先排前面字段,再排后面
     
    使用聚合函数sum(),avg(),max(),min(),将聚合函数放在*的位置即可
     
    分组查询
    SELECT sex,COUNT(sex) FROM student4 GROUP BY sex
     
    `SELECT SUM(math), sex FROM student3 GROUP BY sex;`
    having与where的区别:(巧记,bye(by having),后面再聚!!!)
    • having是在分组后对数据进行过滤
    • where是在分组前对数据进行过滤
    • having后面可以使用聚合函数
    • where后面不可以使用聚合函数
     
    分页查询
    `SELECT *|字段列表 [as 别名] FROM 表名 [WHERE子句] [GROUP BY子句][HAVING子句][ORDER BY子句][LIMIT子句];`
    limit 0,3
    LIMIT语法格式:
    limit offset,length;
    或者limit length;
    offset指索引,偏移量,默认0;length指长度,需要显示的总记录数
    limit 是一个MySQL的"方言",即特有的,其他数据库用的不是limit
     
    备份与还原
    `mysqldump -u用户名 -p密码 数据库 > 文件的路径`
    `SOURCE 导入文件的路径;
     
    数据库约束
    • PRIMARY KEY: 主键,非空,唯一
    • UNIQUE: 唯一,表示使用了这个约束的字段不能重复
    • NOT NULL: 非空,表示使用了这个约束的字段不能为null
    • DEFAULT: 默认,表示如果这个字段没有插入值的话,会赋一个默认值
    • FOREIGN KEY: 外键
    主键 用来唯一标识一条记录,每个表都应该有一个主键,并且每个表只能有一个主键。
    主键包含唯一的 值,主键不能包含null值
    创建主键
    `字段名 字段类型 PRIMARY KEY`
    添加主键 `ALTER TABLE 表名 ADD PRIMARY KEY(字段名);`
    AUTO_INCREMENT 表示自动增长(字段类型必须是整数类型才行)
    ,修改表自动增长赋值为什么:ALTER TABLE 表名 AUTO_INCREMENT=起始值;
     
    TRUNCATE 摧毁表,重建表,从新开始,AUTO_INCREMENT重置为1,而delete不会重置而是后面追加
     
    外键
    新建表时创建外键
    `[CONSTRAINT] [外键约束名称] FOREIGN KEY(外键字段名) REFERENCES 主表名(主键字段名)`
    已有表增加外键
    `ALTER TABLE 从表 ADD [CONSTRAINT] [外键约束名称] FOREIGN KEY (外键字段名) REFERENCES 主表(主键字段名);`
     
    级联
    ON UPDATE CASCADE -- 级联更新,主键发生更新时,外键也会更新
    ON DELETE CASCADE -- 级联删除,主键发生删除时,外键也会删除
     
     
     
  • 相关阅读:
    git 重命名文件夹
    关于IDEA的Incoming窗口的问题
    mysql替换字段中部分字符串
    IDEA项目改包名改项目名并启动【我】
    IDEA在自带市场安装黑色主题及调整包管理器字体大小【我】
    解决Invalid bound statement (not found)(Mybatis的Mapper绑定问题)
    java中Date日期类型的大小比较
    MyBatis-Plus Wrapper条件构造器查询大全
    idea黑色主题
    python3安装mysqlclient,解决django使用pymysql报错的问题
  • 原文地址:https://www.cnblogs.com/21556guo/p/13497551.html
Copyright © 2011-2022 走看看