天天看点

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

点击上方蓝色文字一键关注

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

​点击上方“python学习专栏”,选择“置顶公众号”

干货、福利第一时间送达!

一.SQL语句介绍

SQL语句是操作关系型数据库的通用语句,主要划分为以下 3 个类别

一、DDL(Data Definition Languages)语句:

数据定义语言,这些语句定义了不同的数据段, 数据库,表,列,索引等数据库对象的定义.常用的语句关键字主要包括 create,drop,alter 等。

二、DML(Data Manipulation Language)语句

数据操纵语句,用于添加,删除,更新和查 询数据库记录,并检查数据完整性,常用的语句关键字主要包括 insert,delete,udpate 和 select 等.

三、DCL(Data Control Language)语句

数据控制语句,用于控制不同数据段直接的许可和 访问级别的语句.这些语句定义了数据库,表,字段,用户的访问权限和安全级别.主要的 语句关键字包括 grant,revoke 等.

二.DDL语句

这里的语法统一使用小写,每条SQL语句必须以 分号结尾 ” ; “

1、创建数据库

语法:create database dbname;

例:create database test;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

2、查看已有数据库

语法:show databases;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

3、选择需要操作的数据库

语法:use dbname;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

4、删除数据库

语法:drop database dbname;

例:drop database test; #删除test数据库

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

xxxx

注意:数据库删除后,下面的所有表数据都会全部删除,所以删除前一定要仔细检查并做好相应备份.

xxxx

重新创建一个school数据库,并选择school,用于后续操作

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

5、创建数据表

语法:create table tablename(cloumn_name_1 cloumn_type,cloumn_name_2 cloumn_type,cloumn_name_n cloumn_type,);

创建一个学生表,包括姓名、年龄,性别

例:create table student(name varchar(10), age int(2), sex varchar(2));

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

6、查看表定义

语法:desc tablename;

例:desc student;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

7、查看已有数据表

语法:show tables;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

8、删除表

语法:drop table tablename;

例:不做演示,不然又得重新建表

9、修改表

9.1 修改表类型

语法:alter table tablename modify column_name new_column_type

将 age 从int(2) 改成 int(3)

例:alter table student modify age int(3);

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

9.2 增加表字段

语法:alter table tablename add column column_name column_type;

增加班级字段,类型为varchar(5)

例:alter table student add column class varchar(5);

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

9.3、删除表字段

语法:alter table tablename drop column column_name;

删除班级字段

例:alter table student drop column class;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

9.4、修改字段名

语法:alter table student change column column_name new_cloumn_name column_type ;

修改字段 age 为 age1 类型为 int(2)

例:alter table student change column age age1 int(2);

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

xxxx

注意:change 和 modify 都可以修改表的定义,不同的是 change 后面需要写两次列名,不方便。但是 change 的优点是可以修改列名称,modify 则不能.

xxxx

9.5、修改字段排序

xxxx

前面介绍的的字段增加和修改语法(add/change/modify)中

都有一个可选项 first|after column_name

这个选项可以用来修改字段在表中的位置

默认add增加的新字段是加在表的最后位置

而 change/modify 默认都不会改变字段的位置.

xxxx

重新增加一个class字段,放在name后面

例:alter table student add column class varchar(5) after name;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

10、修改表名

语法:alter table tablename rename new_tablename;

将student 表名改为 student1 然后又改回来

例:alter table student rename student1;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句
delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

xxxx

注意:change/first|after column 这些关键字都属于 MySQL 该标准 SQL 上的扩展,在 其他数据库上不一定适用.

xxxx

三、DML语句

1、插入记录

语法; insert into tablename (column_1, column_2, column_n) values(value1,value2,valuen)

注意,类型需要对应

在表student插入一条记录

例:insert into student (name,calss,age,sex) values('小王','三班',15,'男');

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

也可以不用指定字段名称,但是 values 后面的顺序应该和字段的排列顺序一致

例:insert into student values('花花','三班',16,'男');

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

一次性多插入:

例:insert into student values('依依','三班',16,'男'),('憨憨','三班',15,'男');

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

看看插入的结果:

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

2、更新记录

语法:update tablename set field1=value1,field2=value2 where condition

更新表tablename 字段设置field1 =values,field2=value 条件是

更新 小王 班级 设置为 四班

例:update student set class="四班" where name="小王";

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

可以多表同时更新

语法:

update tablename1,tablename2 set tablename1.field1=value1,tablename2.field2=value2 where condition
           

创建一个年级表(grade),添加 花花的数据和表student一样。

例: 创建表

create table grade (name varchar(10) ,class varchar(5),age int(2),sex varchar(2))

添加数据

例:insert into grade values('花花','三班',16,'男');

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句
delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

更新 student和grate,grate中存在的学生的字段class到四班

例:update student,grade set student.class="四班",grade.class="四班” where name="花花";

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

3、删除记录

语法:delete from tablename where condition

删除grate的数据

例:delete from grade;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

同时可以多表删除,与多表更新类似

注意:不管是单表还是多表,不加 where 条件将会把表的所有记录删除,所以操作时一定要小心.

4、查询数据

语法:select * from tablename where condition;

4.1 查询全表

例:select * from student;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

4.2 查询固定字段

例:select name from student;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

4.3 条件查询

例:select * from student where age>15;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

4.4 查询不重复记录

使用关键字distinct

例:select distinct age from student;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

4.5 排序和限制

xxxx

使用order by进行排序

DESC 和 ASC 是排序顺序关键字,DESC 表示按照字段进行降序排列,ASC 则表示升序 排列,如果不写此关键字默认是升序排列.

xxxx

语法:select * from tablename order by field;

使用age字段进行排序

例:select * from student order by age;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

降序:

例:select * from student order by desc age;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

可进行多字段排

语法:select * from tablename order by field,field2;

对age进行降序,对那么进行默认升序

例:select * from student order by age desc,name;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

限制

对于排序后的记录,如果希望只显示一部分,而不是全部,这时,就可以使用 limit 关键字 来实现,limit经常被用作分页操作

语法:select * from student limit offset_start,row_count;

从offset_start开始 ,显示row_count个

排序后从1 开始显示两条数据

例:select * from student order by age desc limit 1,2;

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

xxxx

注意:limit 属于 MySQL 扩展 SQL92 后的语法,并不是所有数据库的通用语法

xxxx

4.6 聚合

当我们需要使用汇总等操作的使用用到这个操作,这里只提最简单的部分,想进一步了解,大家可以自行百度。

语法:select field function_name from tablename:

xxxx

function_name 表示要做的聚合操作,也就是聚合函数,常用的有 sum(求和),count(*)(总数),max(最大值),min(最小值).

xxxx

统计人数

例:select count(0) from student;

以第一个字段作为汇总

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

四、DCL语句

DCL 语句主要是 DBA 用来管理系统中的对象权限时所使用

创建python用户 密码 123 对数据库school,具有插入,查询的权限。

例:

grant select,insert on school.* to 'python'@'localhost' identified by '123';

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

如果执行语句时报错

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

执行 :flush privileges; 然后再执行即可

退出数据库,重新使用python用户登录

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

插入、查询

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

试试更新

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

没有权限

修改python用户的权限

退出数据库,使用root用户登录,只有root用户有权限修改其他用户权限

移除 python对school的插入权限

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

重新登录:

插入:

delete select语句_mysql-经典SQL语句-笔记一.SQL语句介绍二、DML(Data Manipulation Language)语句三、DCL(Data Control Language)语句1、创建数据库2、查看已有数据库3、选择需要操作的数据库4、删除数据库5、创建数据表6、查看表定义7、查看已有数据表8、删除表9、修改表10、修改表名1、插入记录2、更新记录3、删除记录4、查询数据四、DCL语句

没有权限

xxxx

grant 和 revoke 用于授出和收回了用户 的部分权限

xxxx

继续阅读