当前位置:Gxlcms > 数据库问题 > SQL内容补充

SQL内容补充

时间:2021-07-01 10:21:17 帮助过:22人阅读

view 视图名 as 查询语句;
  • 例子:

    1. <span style="color: #000000;"># 查询邮箱中包含a字符的员工名、部门名和工种信息
    2. # 创建
    3. </span><span style="color: #0000ff;">create</span> <span style="color: #0000ff;">view</span><span style="color: #000000;"> myv1
    4. </span><span style="color: #0000ff;">as</span>
    5. <span style="color: #0000ff;">select</span><span style="color: #000000;"> last_name,department_name,job_title
    6. </span><span style="color: #0000ff;">from</span><span style="color: #000000;"> employees e
    7. </span><span style="color: #808080;">join</span> departments d <span style="color: #0000ff;">on</span> e.department_id <span style="color: #808080;">=</span><span style="color: #000000;"> d.department_id
    8. </span><span style="color: #808080;">join</span> jobs j <span style="color: #0000ff;">on</span> j.job_id <span style="color: #808080;">=</span><span style="color: #000000;"> e.job_id;
    9. #使用
    10. </span><span style="color: #0000ff;">select</span> <span style="color: #808080;">*</span> <span style="color: #0000ff;">from</span> myv1 <span style="color: #0000ff;">where</span> last_name <span style="color: #808080;">like</span> <span style="color: #ff0000;">‘</span><span style="color: #ff0000;">%a%</span><span style="color: #ff0000;">‘</span>;
  • (2)修改视图

    • 方式一:

      • 语法:

        1. <span style="color: #0000ff;">create</span> <span style="color: #808080;">or</span> <span style="color: #ff00ff;">replace</span> <span style="color: #0000ff;">view</span><span style="color: #000000;"> 视图名
        2. </span><span style="color: #0000ff;">as</span><span style="color: #000000;">
        3. 查询语句;</span>
      • 例子:

        1. <span style="color: #0000ff;">create</span> <span style="color: #808080;">or</span> <span style="color: #ff00ff;">replace</span> <span style="color: #0000ff;">view</span><span style="color: #000000;"> myv3
        2. </span><span style="color: #0000ff;">as</span>
        3. <span style="color: #0000ff;">select</span> <span style="color: #ff00ff;">AVG</span><span style="color: #000000;">(salary) , job_id
        4. </span><span style="color: #0000ff;">from</span><span style="color: #000000;"> employees
        5. </span><span style="color: #0000ff;">group</span> <span style="color: #0000ff;">by</span> job_id;
    • 方式二:

      • 语法:

        1. <span style="color: #0000ff;">alter</span> <span style="color: #0000ff;">view</span><span style="color: #000000;"> 视图名
        2. </span><span style="color: #0000ff;">as</span><span style="color: #000000;">
        3. 查询语句;</span>
      • 例子:

        1. <span style="color: #0000ff;">alter</span> <span style="color: #0000ff;">view</span><span style="color: #000000;"> myv3
        2. </span><span style="color: #0000ff;">as</span>
        3. <span style="color: #0000ff;">select</span> <span style="color: #808080;">*</span> <span style="color: #0000ff;">from</span> employees;

    (3)删除视图

    • 语法:

      1. <span style="color: #0000ff;">drop</span> <span style="color: #0000ff;">view</span> 视图名1, 视图名2, ...;
    • 例子:

      1. <span style="color: #0000ff;">drop</span> <span style="color: #0000ff;">view</span> myv1,myv2,myv3;

    (4)查看视图

    • 方式一:

      1. <span style="color: #0000ff;">desc</span> myv3;
    • 方式二:

      1. show <span style="color: #0000ff;">create</span> <span style="color: #0000ff;">view</span> myv3;

    4.视图的好处

    • 重用SQL语句

    • 简化复杂的SQL操作,不必知道它的查询细节

    • 保护数据,提高安全性

    三.SQL执行顺序

    1.手写顺序

    技术图片

    2.机器读顺序

    技术图片

    技术图片

     

    四.MySQL逻辑架构简介

    • 和其他数据库相比,MySQL与众不同。它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上。插件式的存储引擎架构将查询处理和其他的系统以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。

    技术图片

    五.SQL-JIONS

    技术图片

    六.索引

    1.概念

    • 索引是一种高效获取数据的数据结构

    • 除了数据本身之外,数据库还维护着一个满足特定查找算法的数据结构,这些数据结构以某种方式指向数据,这样就可以在这些数据结构的基础上实现高级查找算法,这种数据结构是索引。

    • 一般来说索引本身也很大,不能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上

    • 我们平时说的索引没有特别指明一般都是B树

    2.优势

    • 提高数据检索的效率,降低数据库的IO成本

    • 通过索引列对数据进行排序,降低数据排序的成本,降低CPU的消耗

    3.劣势

    • 多占用了内存空间

    • 索引提高了查询速度,降低了更新速度

    • 根据业务变化,要改变索引建立更加优化的索引

    4.索引的分类

    • 单值索引:一个索引只包含单个列,一个表可以有多个单列索引

    • 唯一索引:索引列的值必须唯一,但是允许有空值

    • 复合索引:一个索引包含多个列

    • 基本语法:

      • 创建:

        • 创建语法: create [unique] index indesName on tableName(columnName1,....); 

        • 例子:

          1. <span style="color: #0000ff;">create</span> <span style="color: #0000ff;">index</span> UQ_Clu_StuNo <span style="color: #008080;">--</span><span style="color: #008080;">索引名称</span>
          2. <span style="color: #0000ff;">on</span> Student(S_StuNo); <span style="color: #008080;">--</span><span style="color: #008080;">数据表名称(建立索引的列名)</span>
        • 添加语法: alter tableName add [unique] index [indexName] on (columnName1,...); 

      • 删除: drop index [indexName] on tableName; 

      • 查看: show index [indexName] on tableName\G; 

      • 使用alter命令:


        技术图片

    5.索引结构:

    • BTree索引

    • Hash索引

    • full-text索引

    • R-Tree索引

    6.需要建立索引的情况

    技术图片

    7.不需要创建索引的情况

    技术图片

     

    SQL内容补充

    标签:技术   条件   并且   信息   单列   聚合函数   分离   提高   不同   

    人气教程排行