Mysql笔记01:增删查改及DDL操作

MySQL(关系型数据库)

——用来持久化数据(SQL语言)

SQL (Structure Query Language) 结构化查询语言

  1. DDL (Data Defination Language) 维护存储数据的结构
>> create, drop, alter 建、删、修改
  1. DML(Data Manipulation Language) 对数据进行操作
>>insertdeleteselectupdate
  1. DCL (Data Control Language) 负责权限管理和事务
>>grant, revoke,commit

注意:

  • sql语句不区分大小写,不区分单双引号
  • ` 反引号用于库名,表名,字段名可以不写,写上则可以将关键字当作库名,表名,字段名。例如:
  use `insert

当命令行出现-> ,‘>,“> 时:
-> 表示缺少;
‘> 表示缺少’
“> 表示缺少”

一 常用数据类型:
bit,tinyint, int, decimal(M,D)
varchar(size),text,blog
datetime, timestamp

参考博客:Mysql数据类型

二 库操作:
create database if not exists students character set utf8mb4;
show databases;
use 库名;
select database(); 		查看当前使用的库
show create database 库名;   查看建库语句
drop database if exists students; 删库
三 表操作:
create table student(id int, 
name varchar(20) comment ‘姓名’,
birthday timestamp); 创建表

show create table 表名;   查看表结构
desc 表名; 				 查看表结构
show tables;
drop table if exists student;

注意:
comment 为字段说明

四 MySQL表的增删改查DML:

CRUD:create(增加),retrieve(查询),update(更新),delete(删除)
对应:insert select update delete

1 insert
insert into student values(1,’张三’,1203);
insert into student(id,name) values(1,’张三’),(2,’张2),(1,’张3);
2 select

基本查询:SELECT子句、FROM 子句、WHERE 子句、ORDER BY 子句、LIMIT 子句

SELECT 字段 FROM 表名称 WHERE 条件 ORDER BY 排序 LIMIT 子句;

字段处可以为:
“*” ,表达式 ,字段名称 ,聚合函数 ,函数

(1)横向筛选,列
1)全列查询:

select * from student;

2)指定列查询:

select id,name from student;

3)指定别名:

select name as ‘姓名’ from student;

4)在select后面列前使用distinct可以消除重复的行:

select distinct id from student;  

5)排序ORDER BY, 升序asc(默认)降序desc:

select id,name from student order by id desc; 

字段1相等则按字段2进行排序

select id,name from student order by id desc,score asc;

6)查询字段可以为表达式

select id+10 ‘排序’,10 from student; 

注意:
select id+10 ‘排序’,10 from student; ‘排序’相当于给id重命名,查询出的结果id都进行+10操作。

(2)条件查询,where 纵向筛选 行

  • between 3 and 8; (闭区间)
  • in(1,23,4);
  • is null; is not null;
  • like ;
  • %表示任意多个,_表示任意一个字符
  • 逻辑运算符and or not
  • >= <= 等于:= <=> 不等于:!= <>
    = 等于,NULL 不安全,例如NULL = NULL 的结果是NULL
    <=> 等于,NULL 安全,例如NULL <=> NULL 的结果是TRUE(1)
select id from student where id between 1 and 3;  闭区间
select id from student where id in(2,3);
select name from student where name like ‘张%;
select name from student where name is not null;

(3)分页查询 limit
:每页显示2条信息,从offset开始,起始下标为0

select id,name from student where id>10 order by id limit 2 offset 0;
select id,name from student where id>10 order by id limit 2 offset 2;

注意:

  • limit要和order by 搭配使用
  • 顺序:where >>> order by >>> limit
  • 排序时null视为最小的数据
  • 没有order by就说明没有顺序
3 update 修改
update student set name=’李四’ where id=1;
update student set name=’张三’, age=18 where id=1;
4 delete删除
delete from student where id=1;
truncate 表名称; (重置表)
delete from student;  删除整张表的数据
五 DDL (Data Defination Language) 维护存储数据的结构

(1)修改表-添加字段

alter table 表名 add 列名 类型;
alter table students add birthday datetime; 

(2)修改表-修改字段:重命名版

alter table 表名 change 原名 新名 类型及约束;
alter table students change birthday birth datetime not null;

(3)修改表-修改字段:不重命名版

alter table 表名 modify 列名 类型及约束;
alter table students modify birth date not null;  #date类型

(4)修改表-删除字段

alter table 表名 drop 列名;
alter table students drop birthday;

(5)删除表

drop table 表名;
drop table students;

(6)删除库

drop database studentinfo;
六 Mysql中的函数

参考博客:Mysql中的函数汇总

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值