高级查询:
decimal(5,2)数据保存几位 用于计算成本
- 并
-
#查询借阅图书表信息中图书加个介于20-1000的图书信息
SELECT * from books where (price>20 and price<100); - SELECT * FROM books where price between 20 and 1000
1-2或
-
#查询借阅图书信息中图书价格小于20或者大于100的图书信息
select * from books where price <20 or price > 100;
2.起别名
-
#查询借阅图书信息表列名使用别名显示
SELECT 列名 as 别名 , 列名 as 别名 from 表名;
3.排序:order by desc 降序 asc 升序
- order by 字段 升序(降序)
-
SELECT * from books ORDER BY price desc;
- SELECT * from books ORDER BY price asc;
3.限制返回次数 limit (次数)
- SELECT * from books LIMIT 3;
- SELECT * from books LIMIT 1,3;(条件)
4. #消除重复
- SELECT DISTINCT class from info;
5.like 模糊查询
SELECT * FROM books where bname like '%三%';
聚合函数:
主要的聚合函数:
- 计数函数:count(列名) 计算元素的个数 (如果有null值是不会计算的)
- 求和函数:sun(列名) 对某一列的值求和,但是属性必须是整形
- 计算平均值;avg(l列名)对某一列的值计算平均值
- 求最大值:max(列名) 找出某一列的最大值
- 求最小值:min(列名)找出某一列的最小值
-
#查询书籍表里面的所有书的总数量
SELECT sum(quanitity) as 总数量 from books;
#查询书籍表里面平均价格
SELECT avg(price) as 平均价格 from books;
#查询书籍信息里面书的最低价格
SELECT min(price) as 最低价 from books;
#查询书籍信息表里面书的最高价格
SELECT max(price) as 最低价 from books;
SELECT count(cno) as 总数 FROM info;
group by 分组查询:
- SELECT 列名 FROM info GROUP BY 列名;(根据某一字段查询)
having子句:(配合聚合函数使用 只能使用having)
- #查询借书卡信息表中班级人数大于1的班级
- SELECT class from info GROUP BY class HAVING count(cno)>1;