数据库(增删改查)
别纠结什么事数据库了,直接新建数据库、新建表格、插入数据、删除数据、查询数据、修改数据
-
增加 insert
-
为表格增加行:
insert into 表名 ( //列段 ) values ( //值 );
-
-
删除 delete
-
删除表格数据:
delete from 表名;
删除表格/删除数据库
drop table 表格名称/数据库名称
-
-
修改 update
-
修改表格数据:
update 表名 set 列段 = 值;
-
-
查询 select---使用频率最高
-
查询表格数据:
select 列段名 from 表名;
-
-
数据库 database
-
创建数据库/表
create database 数据库名/表名
-
-
表格 table
create table teacher( id int, name varchar(100), weight double, birth date );
-
在创建表的时候需要带上列段对应的类型和约束
-
类型
-
int 整数
-
double 小数
-
varchar(100) 字符串(长度)
-
date 日期类型
-
-
约束
-
主键约束( primary key):不能重复,不能为null,可以设置自增,相当于唯一约束与非空约束的结合。
-
唯一约束(unique):不能重复,可以为null
-
检查约束 (check()):做值的约束(男,女)(18~100)
-
非空约束(not null ):必须有值
-
默认约束(default):默认值
-
-
-
between 数值1 and 数值2(取在数值一和数值二之间的数,包括数值一二本身)
-
not beween 也可以
-
-
null 空值
-
必须和 is 连用,不可以使用 = 哦
-
is not null 不是空
-
ifnull() 语法
-
ifnull(列段,'需要替换成的值');
-
-
-
where 哪里,条件查询
select * from stu where id=1;
-
and 并且,or 或者
-
in()
-
相当于或者,括号里面可以返回多个值,一般括号里面使用子查询
-
in(1,2,5) 相当于查找有1,2,5数值的所有列段
-
not in
-
-
-
order by 排序(默认升序)
-
升序 asc
-
降序 desc
-
-
group by 分组
-
having 筛选,分组之后如果有条件,只能使用having不能使用where
-
数据如果分组了那么select后面只能出现聚合函数和分组的依据
-
select 性别,sum(),count() from stu group by 性别
-
distinct 去重 (可以去除重复的列段)
select distinct 列段名 from 表名;
高级查询
-
聚合函数
-
count() :计数
-
sum() :求和
-
avg() :平均值
-
max() :最大值
-
min() :最小值
-
in() :在...中
-
not in() :不在...中
-
like :像,用于模糊查询
-
%:模糊查询的通配符,表示任意个字符
-
字段 like '%了%' :表示查询包含了的语句
-
字段 like '了%' :表示查询句首为了的语句
-
字段 like '%了' :表示查询句尾为了的语句
-
-
_:模糊查询的通配符,表示单个字符
-
-
-
其他函数
-
round() :四舍五入
-
ceiling() :向上取整
-
floor() :向下取整
-
upper() :大写
-
lower() :小写
-
concat() :连接
-
substring() :截取
-
substring('开心麻花',2,2);
-
结果为:心麻---从第二个字开始截取后面两个字,包括第二个字
-
-
length() :字符串长度
-
replace() :替换
-
replace('abc','a','c');---将字符串abc中的a替换成c
-
-
abs() :绝对值
-
now() :当前时间
-
year() :年份
-
year(now())---取当前年份
-
-
day() :天
-
day(now())---取当前日
-
-
month() :月
-
month(now())---取当前月
-
-
-
联表操作
-
inner join 内联接
-
left join 左联接
-
right join 右联接
-
on 设置联表的条件
-
limit 限制
-
select * from stu a inner join score b on a.id=b.stu_id limit 1 第一条 limit 3 前三条 具备分页功能。一页显示8条数据,请问第二页怎么获取 limit 8,8 从前八条后面的第一条开始截取八条数据,不包括前八条的最后一条,注意与substring区分
-
顺序一览
select 列段 from 表 where 条件 group by 分组 having 筛选条件 order by 列段 limit 1
select 列段 from 表A INNER JOIN 表B ON A.XX=B.XX where 条件 group by 分组 having 筛选条件 order by 列段 limit 1标签:必用,表格,数据库,查询,---,列段,select,复习 From: https://blog.csdn.net/XWM_Web/article/details/143777648