• 软考 --- 数据库(4)SQL语句


    SQL 语言

    1.1 定义

    SQL 是结构化查询语言( Structured Query Language )的缩写,其功能包括数据查询、数据操控、数据定义和数据控制四个部分;

    • SQL 语言简洁、方便实用、功能齐全,已成为目前应用最广的关系数据库语言;
    • SQL 既是自含式语言( 联机交互 ),又是嵌入式语言( 宿主语言 );

    1.2 两个基本概念

    基本表:

    是独立存在的表,不是由其它的表导出的表,一个关系对应一个基本表,一个或多个基本表对应一个存储文件;

    视图:

    视图是一个虚拟的表,是一个或几个基本表导出的表,数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中,当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变;

    1.3 数据定义

    SQL 语言使用数据定义语言( DDL )实现其数据定义功能,可对数据库用户、基本表、视图、索引进行定义和撤销;

    1.3.1 定义基本表

    CREATE TABLE < 表名 >( < 列名 > < 数据类型 > < 列级完整性约束条件 > )

    < 表名 > 合法标识符,最多 128 个字符,如 S , SC , C ,不允许重名;

    1.3.2 修改基本表

    ALTER TABLE < 表名 >

    [ ADD < 新列名 > < 数据类型 > [ 完整性约束 ] ]

    [ ALTER COLUMN < 列名 > < 数据类型 > ]

    [ DROP < COLUMN 列名 > | < 完整性约束名 > ]

    • ADD 子句:增加新列和新的完整性约束条件;
    • ALTER COLUMN 子句:用于修改列;
    • DROP 子句:删除指定列或完整性约束条件;

    1.3.3 删除表

    DROP TABLE < 表名 >

    基本表删除后,其中的数据和表上建立的索引都被删除,而建立在该表上的视图不会删除,系统将继续保留其定义,但已无法使用;

    1.3.4 定义视图

    CREATE VIEW < 视图名 > [ ( < 列名 > [ <列名> ] …… ) ]

    AS

    < 子查询 >

    [ with check option ]

    1.3.5 删除视图

    DROP VIEW < 视图名 >

    1.4 查询语句

    1.4.1 SELECT 语句一般格式

    SELECT [ ALL | DISTINCT ] < 目标列表达式 > [ , < 目标列表达式 > ]

    FROM < 表名或视图名 > [ , < 表名或视图名 > ] …… | ( SELECT 语句 )

    ​ [ AS ]< 别名 >

    [ WHERE < 条件表达式 > ]

    [ GROUP BY < 列名1 > [ HAVING < 条件表达式 > ] ]

    [ ORDER BY < 列名2 > [ ASC | DESC ]];

    1.4.2 SELECT 的执行过程

    • 根据 WHERE 子句的检索条件,从 FROM 子句指定的基本表或视图中选取满足条件的元组,再按照 SELECT 子句中指定的列投影得到结果表;
    • 如果有 GROUP 子句。则将查询结果按照 < 列名1 > 相同的值进行分组;
    • 如果 DROUP 子句后有 HAVING 短语,则只输出满足 HAVING 条件的元组;
    • 如果有 ORDER 子句,查询结果还要按照 < 列名2 > 的值进行排列;

    1.4.3 连接查询

    表的连接方式有两种:

    • 表之间满足一定的条件的行进行连接,此时 FROM 子句中指明进行连接的表名, WHERE 子句指明连接的列名及其连接条件;
    • 利用关键字 JOIN 进行连接;
  • 相关阅读:
    Fruity Loop Studio21水果音乐制作软件多少钱?
    goland 远程调试 remote debug
    AngularJS中文手册后半部分学习
    【C++】C++中那些有点意思,但一般也用不到的替代运算符
    【Linux】压缩和解压指令
    找出数组所有元素中最小值或每行每列中最小值忽略nan值numpy.nanmin()
    php mysql运动器材租赁预约管理系统
    ES6中的set、map
    设计模式-桥接模式(Bridge)
    让你的「文件传输助手」歇一歇吧,你完全有更实用的备忘录工具选择
  • 原文地址:https://blog.csdn.net/jc15274630894/article/details/126044204