-- 1:数据库的查询(排序:order by)
-- SELECT * FROM 表名 ORDER BY 排序字段 ASC(升序)|DESC(降序);
-- 1.1 使用价格排序:升序
SELECT * FROM product ORDER BY price ASC;
SELECT * FROM product ORDER BY price ;-- 默认就是升序
-- 1.2 使用价格排序:降序```````
SELECT * FROM product ORDER BY price DESC;
-- 1.3 使用category_id排序:降序
-- 如果是对字符串排序,则使用的是字典顺序: admain about;
SELECT * FROM product ORDER BY category_id ASC;
-- 1.4 使用pname排序:升序
SELECT * FROM product ORDER BY pname ASC;
-- order by 排序只对数字和英文字符串有效,对汉字无效
-- 1.5 在价格排序(降序)的基础上,以分类排序(降序)
SELECT * FROM product ORDER BY price DESC, category_id DESC;
-- 1.6 显示商品的价格(去重复 distinct),并排序(降序)
SELECT DISTINCT price FROM product ORDER BY price DESC;
-- 2:聚合函数(类似于Java中的方法: 函数名())
-- 2.1 count 统计
#1 查询商品的总条数
SELECT COUNT(pname) FROM product; -- 统计pname列的行数,如果有NULL值,则不统计
SELECT COUNT(*) FROM product;
#2 查询价格大于200商品的总条数
SELECT * FROM product WHERE price > 200;
-- from --->where --->count(*)
SELECT COUNT(*) FROM product WHERE price > 200;
-- 2.2 sum 求和
-- 求和只能求数值类型
#1 查询分类为'c001'的所有商品的价格总和
SELECT SUM(price) FROM product WHERE category_id = 'c001';
-- 2.3 avg 平均
#1 查询分类为'c002'所有商品的平均价格
SELECT AVG(price) FROM product WHERE category_id = 'c002';
-- 2.4 max min
#1 查询商品的最大价格和最小价格
SELECT MAX(price) '最大价格',MIN(price) '最小价格' FROM product;
-- select只负责将查询的结果显示
-- 3:分组查询(group by )
-- SELECT 字段1,字段2… FROM 表名 GROUP BY 分组字段 HAVING 分组条件;
-- #1 统计各个分类商品的个数
-- from --->group by
SELECT category_id, COUNT(*) FROM products1 GROUP BY category_id;
-- #2 统计各个分类商品的个数,且只显示个数大于3的信息
-- from ----> group by ---> count(*) --->having ---> select
SELECT category_id, COUNT(*) 'c' FROM products1
WHERE price >200 GROUP BY category_id HAVING c > 1;
-- 4:分页显示(limit)
-- SELECT 字段1,字段2... FROM 表明 LIMIT M,N (M:表示从哪一行的索引(从0开始)开始显示,N表示要显示几行)
-- #1 显示prouct表的前5行
SELECT * FROM products1 LIMIT 0,5; -- 第一页,从1开始,有五行数据
SELECT * FROM products1 LIMIT 5,5; -- 第二页,从6开始,有五行数据
来源:CSDN
作者:正在努力的菜鸟猿
链接:https://blog.csdn.net/pi_lily_kaqiu/article/details/103473686