• mysql数据库 - 统诉


    1、DDL - 数据库操作
    show databases;
    create database 数据库名
    use 数据库名
    select database()
    drop database 数据库名

    2、DDL- 表操作
    show tables;
    create table
    desc 表名
    show create table 表名
    alter table 表名 add/modify/change/rename
    drop table 表名

    3、DML - 数据库操作语言

    1、添加数据
    insert into 表明(字段1, 字段2) values(值1,值2)
    2、修改数据
    update 表名 set 字段1 = 值1, 字段2 = 值2 where
    3、删除数据
    delete from 表名 where 条件

    DQL - 数据库查询语言

    DQL英文全称是Data Query Language(数据库查询语言),数据查询语言,用来查询数据库中表的记录

    查询关键字:SELECT

    select
    字段列表
    from
    表名列表
    where
    条件列表
    group by
    分组字段列表
    having
    分组后条件列表
    order by
    排序字段列表
    limit
    分页参数

    查询公司员工的上班地址(不要重复)
    select distinct workaddress ‘工作地址’ from emp

    • DQL - 条件查询(where)

    • DQL - 聚合函数(count, max, min, avg, sum)
      1、介绍
      将一列数据作为一个整体,进行纵向计算。
      2、常见的聚合函数
      | 函数 | 功能 |
      |–|–|
      | count |统计数量 |
      | max| 最大值|
      | min|最小值 |
      |avg|平均值|
      |sum| 求和|

    • DQL - 分组查询
      1、语法
      select 字段列表 from 表名 [where 条件] gruop by 分组字段名 [having 分组后过滤条件]
      2、where 与 having 区别

    • 执行时机不同: where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。

    • 判断条件不同: where 不能对聚合函数进行判断,而having可以。

    注意

    • 执行顺序:where > 聚合函数 > having
    • 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义。

    DQL - 排序查询
    1、语法
    select 字段列表 from 表名 order by 字段1,排序方式,字段2,排序方式2;
    2、排序方式

    • asc: 升序
    • desc: 降序

    注意: 如果是多字段排序,当第一个字段相同时,才会根据第二个字段进行排序。

    DQL-分页查询
    1、语法
    select 字段列表 from 表名 limit 起始索引,查询记录数。

    注意

    • 起始索引从0开始,起始索引 = (查询页码 - 1) * 每页显示记录数。
    • 分页查询是数据库的方言,不同的数据库有不同的实现,MySql中是limit

    DQL - 执行顺序

    from
    表名列表
    where
    条件列表
    group by
    分组字段列表
    having
    分组后条件列表
    select
    字段列表
    order by
    排序字段列表
    limit
    分页参数

    总结

    1、DQL语句
    select
    字段列表 字段名[AS]别名
    from
    表名列表
    where
    条件列表【like, between, and, in , and ,or 】
    group by
    分组字段列表
    having
    分组后条件列表 分组之后过滤
    order by
    排序字段列表 升序asc, 降序desc
    limit
    分页参数

    SQL

    • DCL - 介绍
      DCL 英文全称是Data Contro Language(数据控制语言), 用来管理数据库用户,控制数据库的访问权限。

    • DCL - 管理用户
      1、查询用户
      use mysql;
      select * from user;
      2、创建用户
      create user ‘用户名’@‘主机名’ IDENTIFIED BY ‘密码’
      3、修改用户密码
      ALTER USER ‘用户名’@‘%’ IDENTIFIED WITH mysql_native_pasword BY ‘密码’
      4、删除数据
      DROP USER ‘用户名’@‘主机名’

    注意:

    • 主机名可以使用通配符。
    • 这类SQL开发人员操作的比较少,主要DBA使用。

    SQL

    • DCL - 权限控制
      MySQL中定义了很多权限,但是常用的有。
    权限说明
    ALL所有权限
    SELECT查询数据
    INSERT插入数据
    UPDATE修改数据

    1、查询权限
    show grants for ‘用户名’@‘主机名’
    2、授予权限
    grant 权限列表 on 数据库名.表名 to ‘用户名’@‘主机名’
    3、撤销权限
    revoke 权限列表 on 数据库名.表名 from ‘用户名’@‘主机名’

    注意:

    • 多个权限之间,使用逗号分割
    • 授权时,数据库名和表名可以使用*进行统配,代表所有。

    总结

    1、用户管理
    create user ‘用户名’@‘主机名’ IDENTIFIED BY ‘密码’;
    ALTER user ‘用户名’@‘主机名’
    drop user ‘用户名’@‘主机名’
    2、权限控制
    grant 权限列表 on 数据库名.表名 to ‘用户名’@‘主机名’
    revoke 权限列表 on 数据库.表名 from ‘用户名’@‘主机名’

  • 相关阅读:
    期末测试——JavaScript方式练习题
    01. Docker的基本介绍
    微软同“亲女儿”小冰单飞后的再联手,AI 数字员工可行吗?
    数据结构- 顺序表-单链表-双链表 --【求个关注!】
    学点设计模式,盘点Spring等源码中与设计模式的那些事之行为型模型
    [SpringMVC笔记] SpringMVC-16-拦截器入门
    【数据结构】栈和队列重点知识汇总(附有OJ题)
    重装系统后要安装哪些驱动
    Nginx+keepalived 高可用高性能
    力扣每日一题2022-09-07简单题:重新排列单词间的空格
  • 原文地址:https://blog.csdn.net/weixin_43843978/article/details/136242819