1、数据库的删除(其实也不太常用哈,不过了解一下)
drop:删表,删数据 不能回退
truncate table:删数据 不能回退
delete:删数据 能回退 (删除一个表的某个数据)delete from employee where username='bbb';
2、常用的条件查询(查询)
where +一般条件
eg:
select * from student where english>80 and english<90;
select * from student where math=80 or math=90 or math=91;
select * from student where math in(80,90,91);
模糊查询:like select * from student where name like '李%';
group by 分组 select name,math from student order by math;
desc 由高到低 select name from student order by (math+english+chinese) desc;
having 用于分组函数 (having是在分组后对数据进行过滤.where是在分组前对数据进行过滤)select name from 表 group by name(group by后头分的祖需要对应前面select后面的列才可以)having min(score)>80"
order by 排列顺序
3、增改
update star set type=4 where name='王' or name='黄'
insert into user values(3,'张三'),(4,'李四'),(5,'王五'),(6,'赵六');
4、运算符之类
如果要统计表中的总记录数,那么count( *|不能为空的字段名)
sum();计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0
max();计算指定列的最大值,如果指定列是字符串类型,那么使用字符串排序运算
min();计算指定列的最小值,如果指定列是字符串类型,那么使用字符串排序运算
avg();计算指定列的平均值,如果指定列类型不是数值类型,那么计算结果为0
5、联合查询,将两个SQL语句查询出来的结果集进行合并
SELECT * FROM a UNION SELECT * FROM b //去重排序出来
SELECT * FROM a UNION ALL SELECT * FROM b //全部显示,不去重
6、分页查询
limit a,b,a表示从第几条数据开始查询,b表示每页的数据条数,客户端只会传给服务器,页数和每页的数据条数,如果客户端传过来 1,3表示,客户端需要第一页的数据,每页3条数据,服务器拿到页数和每页的数据条数之后,要将页数转换成从第几条数据开始
SELECT * FROM star LIMIT 0,3
-- 客户端给你传2,3
SELECT * FROM star LIMIT 3,3
-- 客户端给你传3,3
SELECT * FROM star LIMIT 6,3
总结一个公式,将客户端传过来的页数page 转换成limit a,b中的a
a=(page-1)*b
举例:
使用分页查询,查询出来身价最高的明星信息
先按照=身价由高到低排序,然后使用分页查询查询出第一条数据
SELECT * FROM star ORDER BY price DESC LIMIT 0,1
7、左右连接:
左连接:select *from user left join orders on user.id=orders.user_id;
右连接:select *from user right join orders on user.id=orders.user_id;
-------------------------------------------------
a表 id name b表 id job parent_id
1 张3 1 23 1
2 李四 2 34 2
3 王武 3 34 4
a.id同parent_id 存在关系
内连接: select a.*,b.* from a inner join b on a.id=b.parent_id
结果是
1 张3 1 23 1
2 李四 2 34 2
完全连接: select a.*,b.* from a full join b on a.id=b.parent_id
结果是
1 张3 1 23 1
2 李四 2 34 2
null 3 34 4
3 王武 null
8、数据库备份(导出数据备份、导入数据):create table as
9、一些其他知识:
一个表只能有一个聚集索引,可以有多个非聚集索引