zoukankan      html  css  js  c++  java
  • Mysql_常用语法

    常用语法

    1. 创建数据库

       create DATABASE 数据库名;

    2. 创建表

      

    3. DML核心CRUD增删改查

        增加:insert

      删除:delete

      更新:update

        查询:select

    4. 基本查询语句

    • 基本查询:select * from table_name;
    • 字段查询:select 字段名 from table_name;
    • 条件查询:select * from table_name where a=1;
    • 倒排序:select * from table_name order by 字段名 desc;
    • 分页:select * from table_name order by 字段名 desc limit 10 offset 0;
    • 去重:select distinct 字段名 form table_name;

    5. 条件查询

    • and  or   not
    • 相等:=
    • 数字比较:= > < <>(不等于)
    • like通配: %_
    • BETEWWN AND
    • IN

    6. 聚合查询

    • group by having
    • COUNT,MAX,MIN,SUM,AVG

     7.多表查询

     8. 去重查询

    9. 常用关键字

    10. 面试常问:

    • 视图

     优点:

    • 使用视图,可以定制用户数据,聚焦特定的数据
    • 使用视图,可以简化数据操作
    • 使用视图,基表中的数据就有了一定的安全性 
    • 可以合并分离的数据,创建分区视图  

       缺点:

    • 性能差
    • 修改限制
    • 存储过程:存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集

     优点:

    • 运行速度:对于很简单的sql,存储过程没有什么优势。对于复杂的业务逻辑,因为在存储过程创建的时候,数据库已经对其进行了一次解析和优化。存储过程一旦执行,在内存中就会保留一份这个存储过程,这样下次再执行同样的存储过程时,可以从内存中直接调用,所以执行速度会比普通sql快
    • 减少网络传输:存储过程直接就在数据库服务器上跑,所有的数据访问都在数据库服务器内部进行,不需要传输数据到其它服务器,所以会减少一定的网络传输

       缺点:

    • SQL本身是一种结构化查询语言,但不是面向对象的的,本质上还是过程化的语言,面对复杂的业务逻辑,过程化的处理会很吃力。同时SQL擅长的是数据查询而非业务逻辑的处理,如果如果把业务逻辑全放在存储过程里面,违背了这一原则
    • 索引

      优点:

    • 通过创建唯一索引,可以保证数据库每一行数据的唯一性
    • 可以大大提高查询速度
    • 可以加速表与表的连接
    • 可以显著的减少查询中分组和排序的时间。  

      缺点:

    • 创建索引和维护索引需要时间,而且数据量越大时间越长
    • 创建索引需要占据磁盘的空间,如果有大量的索引,可能比数据文件更快达到最大文件尺寸
    • 当对表中的数据进行增加,修改,删除的时候,索引也要同时进行维护,降低了数据的维护速度
  • 相关阅读:
    第二章Redis管理实战
    第一章Redis入门部署及持久化介绍
    数据库命令
    第一章MySQL介绍及安装
    第十一章 MHA高可用及读写分离
    第八章 日志管理
    第九章 备份和恢复
    第十章 主从复制
    关系型数据库和非关系型数据库的对比
    MySQL面试题
  • 原文地址:https://www.cnblogs.com/hd-test/p/11307928.html
Copyright © 2011-2022 走看看