SQL语言分类: 数据定义:DDL 数据操纵:DML 数据控制:DCL 数据查询:DQL SQL的语法特征: SQL语言,大小写不敏感 SQL语言可以单行或多行书写,最后以 ; 结束 SQL语言 [] 是可选的 单行注释:--注释内容(后面一定要有一个空格) 单行注释:#注释内容(后面可以不加空格个,推荐加上) 多行注释:/*注释内容*/
目录
DDL:
DDL-库的操作
DDL-表的操作
DML:
插入INSERT
数据删除DELETE
数据更新UPDATE
DQL
基础查询
分组聚合
排序分页
简单命令行:
show databases; 查看有哪些数据库
use 数据库名; 使用某个数据库
show tables; 查看数据库内有哪些表
exit 退出MySql的命令行环境
/*
create table table_name (
列名称 列类型,
列名称 列类型,
......
);
*/
-- 列类型有:
int -- 整数
float -- 浮点数
varchar(长度) -- 文本,长度为数字,做最大长度限制
date -- 日期类型
timestamp -- 时间戳类型
删除表/*
drop table 表名称;
drop table if exists 表名称;
*/
基础语法:
insert into 表名[(列 1,列2......,列N)] values(值1,值2,......,值N),(值1,值2,......,值N)
create database world;
use world;
create table student(
id int,
name varchar(10),
age int
);
insert into student(id) values (10001),(10002),(10003);
insert into student(id,name,age) values (10004,'张三',31),(10005,'李四',18),(10006,'王五',33);
insert into student values (888,'锦鲤',66);
操作结果:
基础语法:
delete from 表名称 [where 条件判断]
例如:
delete from student where id = 10001;
其中 delete from student; 是删除整张表的的数据。
基础语法:
update 表名 set 列= 值[where 条件判断];
update student set name = 'Mike' where id = 1;
注意:字符串的值,出现在sql语句中,必须要用单引号包围起来
基础语法:
select 字段列表或 * 表
含义是:从(from)表中,选择(select)某些列进行展示
select id from student;
过滤查询语法:select 字段列表或 * 表 where 条件判断;
出现场景:如统计班级中,男生的人数和女生的人数
则:
按性别分组;然后统计每个组的人数。
基础语法:
select 字段或者聚合函数 from 表 [ where 条件] group by 列
聚合函数有:
select sex ,avg(age),sum(age),min(age),count(*) from student group by sex;
可以对查询结果,使用 order by 关键字,指定某个列进行排序
select * from student where age > 17 order by age asc ;
结果分页限制:使用limit 关键字,对查询结果进行数量限制或分页显示
语法:
select * from student limit 2; # 显示student表中前两行的信息。
select * from student limit 1,2; # 显示student表中从第二行开始,向后选两行。
注:
截断表,当用代码进行添加数据时,只添加了一部分,此时需要使用truncate进行截断表
使用 truncate table [表的名字]