MySQL数据库 增删查改案例讲解

-- 查询:
--  1:查询登录次数大于10的,并且地址是合肥的用户(字段,loginnum,areaid);
-- SELECT userid,loginnum,areaid from y_member WHERE  loginnum>10 and  areaid=1

--  2:查询会员组是“年会员”或者 余额大于60的用户(字段,groupid,amount);
-- SELECT groupid,userid,amount from y_member WHERE groupid=3 or amount>60

-- 3:查询合肥地区,余额大于60 或者积分大于5的用户(字段,areaid,amount,point)
-- SELECT userid,areaid,amount,point from y_member WHERE areaid=1 AND (amount>60 or point>5)

-- 4:查询积分和余额相等的用户。(amount,point)
-- SELECT userid,amount,point from y_member WHERE amount=point

-- 5:查询合肥地区余额是 30,20,40的用户,或者积分是,20,30,40的用户
-- SELECT userid,areaid,amount,point from y_member  WHERE  areaid=1 and (amount in (30,20,40) or point in (20,30,40))

-- 6:查询昵称包含“丽”,地址是合肥的用户,只显示列userid,nickname,areaid。
-- SELECT userid,nickname,areaid from y_member WHERE areaid=1 and nickname LIKE '%丽%'

-- 7:查询芜湖和马鞍山地区登录次数大于20次的用户,并按照余额降序排列。desc降    ASC升
-- SELECT userid,areaid,amount from y_member WHERE  (areaid=1 or areaid=3) AND amount>20 ORDER BY amount ASC

-- 8:查找马鞍山积分大于5的用户, 已知一页显示10条记录,查询第三页的数据。分页公式 (page(当前页)-1)*pagesize(每页显示的数量)(page-1)*pagesize,10     LIMIT 20,10 20是起始位置 10是每页的条数
-- SELECT userid,areaid,amount,point from y_member WHERE areaid=3 and point>5 LIMIT 20,10

-- --多表查询
--  1:查询有地区分类的用户信息,并显示用户地区名称。
--    SELECT a.userid,a.areaid,b.areaname from y_member a,y_area b WHERE a.areaid=b.areaid

--     2:查询有地区分类并且有会员分组的用户信息,并显示用户地区名称 和分组名称。
--        SELECT a.userid,a.areaid,b.areaname from y_member a,y_area b,y_group c WHERE a.areaid=b.areaid and a.groupid=c.groupid

-- 3:查询用户余额(y_member)表,在折扣表(y_discount)中的折扣等级。
-- SELECT a.userid,a.amount,b.min,b.max,b.num from y_member a,y_discount b WHERE a.amount>b.min and a.amount<b.max

-- 内联样式的写法
-- 1:查询有地区分类的用户信息,并显示用户地区名称。
-- SELECT a.userid,a.areaid,b.areaname from y_member a INNER JOIN y_area b on a.areaid = b.areaid


-- 1:查询等于 用户id 为 27的余额,所有的用户信息
-- 多级联查
-- SELECT amount,userid from y_member WHERE  amount=(SELECT amount from y_member WHERE userid=27)

-- 2:查询和用户id 1022 不在同一个地区的所有用户。
-- SELECT userid,areaid from y_member WHERE  areaid != (SELECT areaid from y_member WHERE  userid=1022 )

-- 3:查询余额最多的所有用户信息。
-- SELECT userid,amount from y_member WHERE amount = (SELECT MAX(amount) from y_member)

--  4:查询余额和 用户id:27相同或者和1022相同的所有用户。
-- SELECT userid,amount from y_member WHERE amount in (SELECT amount from y_member WHERE userid=27 or userid=1022)

-- 添加数据
-- insert  into y_discount VALUES (0,1,2,3) 
-- 逐个添加数据
-- INSERT  into y_discount (min,max)VALUES (4,6)
-- 插入多行数据
--     insert into y_discount (num,max) VALUES (10,11),(40,90)
-- 修改数据 称更新数据 这是对所有num进行更新
-- UPDATE y_discount set num = 0

-- 对单行数据中的num修改数据 原有的数据修改后 后面想再修改回去是不可以的
-- UPDATE y_discount set num = 1  WHERE id = 8
 
-- 单行删除数据 删除之后原数据系统依旧保留 但不可以从删除后的id计数累加
-- DELETE from y_discount WHERE id=8

-- 这个方式主要用于清空表中的所有数据  清空后可以从0开始
-- truncate TABLE y_discount 


       

猜你喜欢

转载自blog.csdn.net/m0_59505309/article/details/126625867