• 关系型数据库语言基础整理


    一 简述

    关系型数据库涉及到的查询语言有三种:操作语言(DML)、定义语言(DDL)、控制语言(DCL)。
    操作语言 :用作日常数据库的数据操纵,,日常获取业务数据的是DML语言,通常使用比较多的语法:
    包括:SELECT、INSERT、UPDATE、DELETE

    定义语言:用作数据库、数据对象、数据列的定义等,通常使用比较多的语法
    包括:CREATE、ALTER、DROP

    控制语言:用作数据库组件的存取许可和权限的命令操作,使用比较多的语法包括:GRANT、DENY、REVOKE

    二 不同场景梳理

    定义语言(DDL)语法应用场景语法
    CREATE用作新数据库、表格的创建CREATE DATABASE 库名CREATE TABLE 表名
    ALTER修改数据库/表的基础信息ALTER TABLE 表名 执行操作
    DROP删除数据库或者表对象DROP DATABASE 库名DROP TABLE 表名
    操作语言(DML语法应用场景语法
    SELECT查询数据库表的记录SELECT * FROM 表名
    INSERT插入一行新的记录INSERT INTO 表名(字段名称1,字段名称2,…)VALUES (值1,值2,…)
    UPDATE更新某一行记录UPDATE 表名 SET 字段值=值,字段名=值 WHERE 条件
    DELETE删除某一行记录,日常这种记录建议谨慎操作DELETE FROM TABLE 表名 WHERE条件
    控制语言(DCL)语法应用场景语法
    GRANT授权给用户或用户组访问数据库对象的权限GRANT SELECT ON 数据库对象 TO 用户/用户组
    DENY限制用户或角色对某些数据库对象的访问权限DENY SELECT,UPDATE ON 数据库对象 TO 角色/用户
    REVOKE撤销用户或用户组访问数据库对象的权限REVOKE SELECT ON 数据库对象 FROM 用户/用户组

    三 SELECT常用语法

    使用场景举例
    查询所有数据SELECT * FROM 表名
    查询指定字段SELECT 字段名1,字段名2 FROM 表名
    指定查询条件SELECT * FROM 表名 WHERE 条件
    比较查询(>,>=,<,<=,=,!=)SELECT * FROM 表名 WHERE 字段名>取值
    逻辑查询(AND,OR)SELECT * FROM 表名 WHERE 字段名1>取值1 AND 字段名2>取值2
    范围查询(BETWEEN AND,IN)SELECT * FROM 表名 WHERE 字段名 BETWEEN 取值1 AND 取值2
    SELECT * FROM 表名 WHERE 字段名 IN(取值1,取值2)
    匹配为空或非空(IS NULL,IS NOT NULL)SELECT * FROM 表名 WHERE 字段名 IS NULL
    SELECT * FROM 表名 WHERE 字段名 IS NOT NULL
    模糊查询(LIKE,%)SELECT * FROM 表名 WHERE 字段名 LIKE ‘字符串’
    SELECT * FROM 表名 WHERE 字段名 LIKE ‘%字符串%’
    查询结果限制行数(LIMIT)SELECT * FROM 表名 LIMIT N(显示N条数据)
    聚合函数(SUM,AVG,MAX,MIN,COUNT)SELECT SUM 字段名 FROM 表名 WHERE 条件
    查询结果分组(GROUP BY)SELECT 字段1,字段2,…FROM 表名 WHERE 条件 GROUP BY 字段1
    查询结果排序(ORDER BY)SELECT 字段1,字段2,…FROM 表名 WHERE 条件 ORDER BY 字段1
    查询结果聚合筛选(HAVING+GROUP BY)SELECT 字段1,字段2,…FROM 表名 HAVING 聚合函数条件 ORDER BY 字段1
    去重查询(DISTINCT)SELECT INSTINCT 字段名 FROM 表名 WHERE 条件
    嵌套查询SELECT 字段N1,字段N2,… FROM
    (SELECT 字段1,字段2,… FROM 表名 WHERE 条件1)
    WHERE 条件2
    多表查询(LEFT JOIN,INNER JOIN,RIGHT JOIN)SELECT 字段1,字段2,…
    FROM 表名1
    LEFT JOIN 表名2
    ON 表1.字段名N=表2.字段名0
    WHERE 条件
  • 相关阅读:
    彻底搞通服务发现的原理和实现
    5月刚刚阿里面软件测试岗回来,3+1面任职阿里P7,年薪28*15薪
    地表温度LST计算教程
    这是不是你们都在找的免费又好用的配音网站?
    基于Python-sqlparse的SQL表血缘追踪解析实现
    【小程序】九宫格抽奖,页面不是有点丑,功能没啥问题,有需要直接拿去改吧
    缓存学习总结4(分布式缓存)
    win10&11安装MG-SOFT+MIB+Browser+v10b
    【第57篇】DEiT:通过注意力训练数据高效的图像transformer &蒸馏
    基于STC12C5A60S2系列1T 8051单片机的数模芯片DAC0832实现数模转换应用
  • 原文地址:https://blog.csdn.net/qq_31385713/article/details/133245913