2021-05-27

MySQL 入门

-- 查询全部的表数据
SELECT * FROM product;

 

-- 查询指定的字段数据
SELECT brand,price FROM product;

-- 去除重复查询
SELECT DISTINCT brand FROM product;

-- 查询商品名称和库存, 在原有的基础上库存+10
SELECT NAME,stock+10 FROM product;

-- 进行null值判断 
SELECT NAME,IFNULL(stock,0)+10 FROM product; 
-- ifnull 判断 (要判断的列,如果为null赋值为:)

-- 查询商品名称和库存,库存在原有的基础上+10 进行null值判断,起别名
SELECT NAME,IFNULL(stock,0)+10 AS getsum FROM product;
-- as关键字可以省略 不过中间要有空格
SELECT NAME,IFNULL(stock,0)+10 getsum FROM product;

-- 查询条件
SELECT * FROM product WHERE stock>20;
SELECT * FROM product WHERE stock<20;

-- 查看库存为14,30,23的商品信息
SELECT * FROM product WHERE stock=14 OR stock=30 OR stock=23;

-- 查看库存为null的商品
SELECT * FROM product WHERE stock IS NULL;

-- 查看库存不为null 的商品
SELECT * FROM product WHERE stock IS NOT NULL;

-- 查询以小米开头的商品
SELECT * FROM product WHERE NAME LIKE '小米%';

-- 查询第二个字是为的
SELECT * FROM product WHERE NAME LIKE '_为%';
    
-- 查询名称为四个的商品信息
SELECT * FROM product WHERE NAME LIKE '____';

-- 查询名称包含电脑的
SELECT * FROM product WHERE NAME LIKE '%电脑%';

-- 获取最高的价格
SELECT  MAX(price) FROM product;

-- 最大值(max) 最小值(min) 求和(sum) 平均值(avg) 统计数量(count)
SELECT SUM(stock) FROM product WHERE brand='小米';
SELECT SUM(price) FROM product WHERE NAME LIKE '%电脑%';

-- 排序 select 列名表 from 表名 [where 条件]order by列名 排序方式....
-- asc 升序  desc降序


-- 对仓库进行排序 asc 升序
SELECT * FROM product ORDER BY stock ASC;

-- 对仓库进行desc降序
SELECT * FROM product ORDER BY stock DESC;

-- 对名称中包含手机的商品进行降序排列
SELECT * FROM product ORDER BY NAME LIKE '%手机%' DESC;

-- 按照金额升序 如果相同 按照库存降序
SELECT * FROM product ORDER BY price ASC ,stock DESC;

-- 分组查询 
-- select 列名列表 from 表名where 条件  group by 分组列名 [having 分组后过滤条件] [order by 排序名 排序方式];
-- 按照品牌分组 , 获取每组商品的总金额
SELECT brand,SUM(price) FROM product GROUP BY brand;

-- 对金额大于4000元的 按品牌分组 并获取商品总金额
SELECT brand,SUM(price) FROM product WHERE price>4000 GROUP BY brand;

-- 对金额大于4000 的商品按品牌分组 获取总金额 只显示大于7000的
SELECT brand,SUM(price) getsum FROM product WHERE price>4000 GROUP BY brand HAVING getsum > 7000;

-- 分页查询 select 列名列表 from 表名 [where 条件] [havng 分组后的过滤条件 ][order by 排序名 排序方式][imit 当前页数 每页显示的条数]
-- 每页显示3条数据

-- 第一页 , 当前页数= (1-1)*3
SELECT * FROM product LIMIT 0 , 3;

-- 第二页 , 当前页数= (2-1)*3
SELECT * FROM product LIMIT 3,3;

-- 第三页 , 当前页数= (3-1)*3
SELECT * FROM product LIMIT 6,3;

-- 对金额大于4000 的商品按品牌分组 获取总金额 只显示大于7000的
SELECT  brand,SUM(price)  getsum FROM product WHERE price>4000 GROUP BY brand HAVING getsum > 7000 ;

码龄个把月,不会插图请见谅  初学Mysql还请各位大佬指点.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值