mysql的grounp by_MySQL基础回顾

最近准备一下面试,所以,重新走一遍基础。

1.删除命令

使用truncate 命令,清除表内数据,却不删除表结构;drop命令将删除表结构和数据;delete按照条件删除表数据,无条件时,可删除所有数据。

2.where子句

where子句是不区分大小写的,可以使用WHERE BINARY  COLUMN区分大小写。

3.update语句

UPDATE tableName SET field = Replace(field,oldString,newString)替换某字段的部分字符串

4.SET FOREIGN_KEY_CHECKS

取消外键约束或添加外键约束,一般用在有外键约束时,修改表结构或删除表。先SET FOREIGN_KEY_CHECKS = 0;去除外键约束,在修改完后加回约束可以SET FOREIGN_KEY_CHECKS = 1;

5.set names utf8

使用show variebles like“character_set_%”; 查看数据库编码,使用set names utf8;改变数据库编码;

6.UNION [ALL | DISTINCT]

union 合并查询结果,默认去重合并,union all 为不去重合并, union distingct 去重(直接union);

7.GROUNP BY

分组查询,可以在分组的情况下进行SUM、COUNT、AVG等函数。

8121b28680cd

8121b28680cd

8.WITH ROLLUP

在分组的基础数据上进行计算

8121b28680cd

9. coalesce(a,b,c);

参数说明:如果a==null,则选择b;如果b==null,则选择c;如果a!=null,则选择a;如果a b c 都为null ,则返回为null(没意义)。

8121b28680cd

10.JOIN

INNER JOIN 内连接或等值连接:获得两张表匹配的数据。LEFT JOIN 左连接,获取左表所有数据,不管右表是否有匹配数据。RIGHT JOIN 右链接,与左连接相反。

11.NULL

判断为null 用 IS NULL ;判断不为NULL 用 IS NOT NULL;比较两个NULL用<=>;

12.事务性

查看用: show variables like 'autocommit'; ; 设置禁用用 SET AUTOCOMMIT=0 ;只有使用INNODB引擎,才支持事务;Spring 事务底层设置了禁用自动关闭;位置定位 org.springframework.jdbc.datasource.DataSourceTransactionManager 类的105行 给每一个con设置了false;

13.索引

索引分单列索引与组合索引。索引实际是一张表,该表保存了主键和索引字段,并指向实体表的记录。虽然大大提高了查询速度,同时却会降低更新表的速度,如对表进行insert、update和delete。更新时,不仅要保存数据,还要保存一下索引文件。建立索引会占用磁盘空间的索引文件。                                                        创建索引:create index  on               ;alter     add index               ;创建表时直接指定;唯一索引

Hash 索引 : 只有Memory存储引擎会显示支持Hash索引;Memory表智存在内存中,断电会消失。适用临时表。Hash索引会把数据以hash形式组织起来,因此当查找某一条记录的时候,速度非常快。hash结构,每个键只对应一个值,而且是三列的方式,所以不支持范围查找和排序等功能;

B+Tree 索引:适合排序等操作,速度慢于hash。

14.赋值表

show create table   name;获取创建表的结构。create table newname like sourcetable;复制表结构;create table newtable selete * from oldtable;复制表结构及数据到新表;

15.导出数据

selete  ... into outfile

16.导入数据

load data local infile  。。。 into table  name

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值