mysql

 一、连接查询

 1. 左连接:left join  :左表为基准,左边全部显示,右边有相同字段显示

        select 字段 from 表1 left join 表2 on 表1.字段 = 表2.字段;

2. 右连接:right join : 左连接相反

        SELECT 字段 FROM 表1 right JOIN 表2 ON 表1.字段 = 表2.字段;

3. 内连接: inner join : 取交集

        select 字段 from 表1 inner join 表2 on 表1.字段 = 表2.字段;

二、 聚合函数       

        count、sum、avg、max、min

三、关键字

        分页:limit      select * from 表 limit 2,6 从第三条显示,显示六条

        分组:group by     select 列,count(*) from 表 group by 列名

        去重: distinct     select distinct name  from  表

四、执行循序

        form..on..left join..where..group by..avg()/sum()..having.select..order.. by..asc/desc..limit..

五、数据库三范式:原子性、唯一性、直接性。

六、存储引擎:

        1.MyISAM    5.5之前默认

            支持表锁,不支持事务、外键

        2. InnoDB     

             支持行锁、事务、外键、聚集索引

七、数据库事务

        1. 事务特性:原子性、一致性、隔离性、持久性

        2. 隔离级别:读未提交、读已提交、可重复读、可串行读

                        脏读、可重复读、幻读    从左边一次少一个。

八、索引

        快速查找,提高数据库性能,唯一索引保证唯一性,加速表与表之间的连接,减少分组、排序的时间。

索引分类:普通索引、唯一索引、主键索引、联合索引、全文索引。

        2. 索引失效:

                (1) 范围查询, 右边的列不能使用索引, 否则右边的索引也会失效.

                (2) 不要在索引上使用运算, 否则索引也会失效.

                (3) 字符串不加引号, 造成索引失效.

                (4) 尽量使用覆盖索引, 避免select *, 这样能提高查询效率.

                (5) or 关键字连接

九、mysql 优化

        1. 命令:show status like 'Com_select(insert)'  可以知道数据库 查询多还是增删多,侧重优化。

        2. explain + sql语句查询sql执行过程 

        3. show profile 分析SQL,可以查看所有sql 语句的执行效率(所用时间).

        4. 慢查询日志(常用的工具)

十、 索引优化

       1. 对查询频次较高, 且数据量比较大的表, 建立索引.

        2. 使用唯一索引, 区分度越高, 使用索引的效率越高.

        3. 索引并非越多越好, 如果该表赠,删,改操作较多, 慎重选择建立索引, 过多索引会降低表维
护效率.

        4. 使用短索引, 提高索引访问时的I/O 效率, 因此也相应提升了Mysql 查询效率.

        ....

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值