MySQL基础操作指令学习

DDL语句

查看已有数据库

  • show databases;

创建数据库

  • create database 数据库名;

使用某一个数据库

  • use 数据库名;

删除数据库

  • drop database 数据库名;

数据库里

  • 查看数据库里的数据表

    • show tables;

  • 创建数据表

    • create table 数据表名(字段1名 字段1数据类型 列的约束条件,字段2名 字段2数据类型 列的约束条件,······,字段n名 字段n数据类型 列的约束条件);

      注意:列的约束条件可以省略

  • 查看数据的表的具体信息

    • desc table 数据表名;

    • show create table 数据表名;

    • show create table 数据表名\G

  • 修改数据表名

    • alter table 旧表名 rename [to] 新表名;

  • 删除数据表

    • drop table 数据表名;

  • 数据表的修改

    • 修改数据表中某字段的数据类型

      • alter table 数据表名 modify column 字段名 新的数据类型 [first|after 某一字段名];

      • alter table 数据表名 change column 字段名 字段名 新的数据类型 [first|after 某一字段名]

        注意:

        • column可以省去;

        • 中括号中的内容可写可不写,写的话直接在数据类型后面接first或者after 某一字段名。中括号不用写。

        • first表示修改或添加的字段放在字段列表中的第一位。

        • after 某一字段名; 表示放在某一字段后面。

    • 修改数据表中某字段的字段名

      • alter table 数据表名 change column 旧的字段名 新的字段名 字段原本数据类型 [first|after 某一字段名];

    • 数据表中增加字段

      • alter table 数据表名 add column 字段名 字段数据类型 [first|after 某一字段名];

    • 删除数据表中某一字段

      • alter table 数据表名 drop 字段名;

DML语句

数据表录入记录值

  • 一次录入一条记录值

    • insert into 数据表名(字段1名,字段2名,······,字段n名) values(值1,值2,······,值n);

  • 一次录入多条记录值

    • insert into 数据表名(字段1名,字段2名,······,字段n名) values(值1,值2,······,值n), (值1,值2,······,值n),······,(值1,值2,······,值n);

    注意:

    • 数据表名后的字段名可以省略,但是values后的值要与数据表中的字段一一对应。

    • 数据表名后接的字段名可以乱序,但是values后接的值也要乱序对应。

查看数据表记录值

  • 查看所有记录值

    • select * from 要查看数据表名;

  • 查看某一字段下的所有记录值

    • select 数据表中某一字段名 from 要查看数据表名;

  • 查看不重复的记录值

    • select * distinct from 要查看的数据表名;

      • 多用于查看某一字段下不重复的记录值

  • 条件查看记录值

    • select * from 要查看的数据表名 where 定位记录值的条件;

      • 条件字段常用比较符:=,>,<,!=,>=,<=

      • 多条件之间常使用:or和and连接

修改数据表中记录值

  • 修改一个数据表中的值

    • update 数据表名 set 字段1名=值1,字段2名=值2,······,字段n名=值n where 定位记录值的条件;

  • 修改多个数据表中的值

    • update 数据表1名,数据表2名,······,数据表n名 set 数据表1名.字段n=值,······,数据表n名.字段n=值 where 定位记录值得条件;

删除数据表中的记录值

  • 删除单个表中的记录值

    • delete from 数据表名 where 定位记录值的条件;

  • 删除多个表中的记录值

    • delete 数据表1名,数据表2名,······,数据表n名 from 数据表1名,数据表2名,······,数据表n名 where 定位要删除记录值的条件;

数据表中记录值排序

  • 根据某一字段的值来排序

    • select * from 数据表名 order by 字段名[desc|asc];

      • asc为升序,也是默认;desc为降序。

  • 根据多个字段的值来排序

    • select * from 数据表名 order by 字段1名[desc|asc],字段2名[desc|asc],······,字段n名[desc|asc];

      • 可以处理某字段值相同的排序。

  • 限制记录值的输出数量

    • 在语句后面加 limit 数字;

      • 意思是从第0条开始,一共输出数字条。

    • 在语句后面加 limit 数字1,数字2;

      • 两个数字的意思是从第数字1条开始输出,一共输出数字2条。记录值的条数是从0开始计数。

数据表中记录值聚合

(注意:多个函数可以同时使用,同时也要注意要符合逻辑。)

  • 某字段下记录值的求和

    • select sum(字段名) from 数据表名;

  • 求记录值得总条数

    • select count(*|字段名) from 数据表名;

  • 求某一字段下最大的记录值

    • select max(字段名) from 数据表名;

  • 求某一字段下最小的记录值

    • select min(字段名 from 数据表名;)

  • 分组聚合

    • 分组求和

      (注意:分组聚合是否能显示对应的组名,要看逻辑是否合理。比如,进行全部求和之后的值是一个单独的数,一条单独的记录值。)

      • select sum(字段名) from 数据表名 group by 可以起分组作用的某一字段名;

      • select 可以起分组作用的某一字段名,sum(字段名) from 数据表名 group by 可以起分组作用的某一字段名;

        • 这个还可以显示求和值对应的组名

    • 分组求总条数

    • 分组求最大值最小值

  • 对分组聚合后的结果再进行汇总

    • 再加总求和

      • select sum(字段名) from 数据表名 group by 可以起分组作用的某一字段名 with rollup;

    • 再筛选符合某一条件的分组

      (注意:where用于首次筛选。having用于二次筛选)

      • select sum(字段名) from 数据表名 group by 可以起分组作用的某一字段名 having sum(字段名)>某一数值;

      • select 可以起分组作用的某一字段名,sum(字段名) from 数据表名 group by 可以起分组作用的某一字段名 having sum(字段名)>某一数字;

数据表连接显示

  • 内连接

    • select * from 数据表1名,数据表2名 where 两个表对应的关系的条件;

    • select可以给字段和数据表名取别名,以简化代码

      • select 中数据表名后面或者字段表名后面加上表名即可,在同一条语句中就可以用别名代替原名。

  • 外连接

    • 左连接

      • select * from 数据表1名 left join 数据表2名 where 两个表对应的关系的条件;

        • 数据表1全部显示,数据表2与之对应,不够则输出null

    • 右连接

      • select * from 数据表1名 right join 数据表2名 where 两个表对应的关系的条件;

        • 数据表2全部显示,数据表1与之对应,不够则输出null

子查询

  • 常用关键字

    • in、not in、exists、not exists

  • in / not in

    • select * from 数据表 where 某字段名 in(select 某字段名 from 另一个数据表);

      • 若查询结果唯一(只有一条),则in可以用等号代替。

  • exists / not exists

    • select * from 数据表名 where exists(select 语句);

查询记录结果联合显示

  • union / union all

    • select * from 数据表1名 union select * from 数据表2名;

    注意

    • 两个表格连接的条件时列的个数要相同

    • 连接后的表格的表头是第一个表的表头

    • union是去除重复数据在显示

    • union all是全部显示

DCL语句

待学。

如果有错误的地方望谅解哈,一起学习一起进步。

PDF版资源链接:https://download.csdn.net/download/qq_45520802/33387915

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翻车鱼永不翻车

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值