查询
去重
//相同的行只会保留一个
select distinct 某个列/多个列 from 表名;
这个去重必须是所要进行去重的列的所要去重的数据都是相同,单一某一列相同并不会进行去重的效果。例子如下图,数学得分相同的并未进行去重,必须名字和得分都相同才会实现去重的效果。
排序
select 列名 from 表名 order by 列名 asc/desc;//asc升序desc降序(当不写的时候默认为asc)
加入order by之后就会按照指定的升降进行按行排序,order by 也可对表达式和表中未查找但是存在的其他存在的列进行操作。具体案例如下图:
指定多个列进行排序
select * from 表名 order by 列名 asc/desc,列名 asc/desc;
排序的方式是具有优先级的,从左到右,也就是说当在进行排序的时候先进行第一列表的排序按照指定的升序/降序,当第一个列表出现相同就进行第二个列表的排列顺序。
条件查询
条件查询中各个运算符在条件中的用法汇总。
条件查询是通过取出表中的数据,与表中的条件进行判断,符合条件就进行记录,然后存下,不符合就直接pass掉。补充点:null与任何运算符进行操作得到的结果还是null,null就是false,会被where条件判断pass掉。
select 列名 from 表名 where 条件;
闭区间查询
select 列名 from 表名 where 条件 between and ;//注意这里面两边都是闭区间
模糊匹配
模糊匹配需要通配符进行操作,%:代指任意一个任意字符,%号根据所在的位置具有不同的用法,在首部就是查找首部含这个字的,中间就是查找含这个字的,尾部就是结尾含这个字的。_:代指一个任意字符,一个_代表一个字段,例如查找陈小黑可以输入陈_ _,而输入陈_就会报错。
分页查询
分页查询使用,limit可以限制此次查询最多显示多少个结果,相比于select*这种查询可以进行分页查询,保障了查询时的效率,也便于用户页面对数据的查看。
select *from 表名 limit 页面展示个数 offset 步长;
修改
update 表名 set 列名 = 值 where 条件;
一次修改多个列
update 表名 set 列名 = 值,列名 = 值 where 条件;
给前三名的学生进行数学成绩减少10分
在进行全行处理的时候条件不写就可以进行全行处理。
删除
delete from 表名 where 条件;
drop table与delete的区别
drop table删除后表中的数据和表都不在了。delete删除后表还存在,只是删除表中的数据。