笔记(自用)

66 阅读2分钟
-- 条件查询
-- select 字段列表 from 表名 where 条件列表
                                -- 条件列表 可以是一系列运算符,比较运算符,逻辑运算符。
                                select * from joker where age = 20;
select id  from joker where age <= 21; --  字段列表的意思也就是上面的内容,什么id啊,什么什么的
select * from joker where age between 20 and 21;-- 查年龄在20-21岁之间的人
select * from joker where age = 20 and id = 1; -- and 的用法就是,可以同时检索两个条件





-- 聚合函数  注意:所有的null值是 不参与运算的
                                               select avg (age) from joker; -- 用聚合函数求年龄的平均值
                                               select count(age)  from joker; -- 求总数
                                               select max(age) from  joker; -- 求最大值
                                               select min(age) from joker;-- 求最小值
                                               select sum(age) from joker; -- 求年龄总和





-- 分组查询 group by
-- select 字段列表 from 表名 [where 条件] group by 分组字段名 [having 分组后过滤条件]
-- where 和having 的区别
-- 执行时机不同: where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤
-- 判断条件不同: where不能对聚合函数进行判断,而having可以
                                                                          select gender,count(*) from joker  where age < 21 group by gender ;
-- 执行顺序:where> 聚合函数 > having




-- 排序查询
-- 升序为asc (此为默认),降序为desc
-- select 字段列表 from 表名 order by 字段1 排序方法1,字段2 排序方法2;
select * from joker order by id desc; -- 降序排序
-- 如果出现第二个字段,则说明第一个字段有相同的话,就按照第二个字段的来排序,先按照一的来,如果有相同的,再按照二的来



                                      -- 分页查询 (limit)
                                      -- select 字段列表 from 表名 limit 起始索引,查询记录数;
                                      select * from joker limit 0,2;
                                      select * from joker limit 1,2;
                                      select * from joker limit 3,2;
                                      
                                      
-- DQL运行顺序 先from - where - group by - having -  select - order by - limit





-- DCL用来管理数据库 用户,控制数据库的访问权限

-- 创建用户 create user  '用户名'@'主机名' identified by '密码'
-- 本机访问的数据库
create user 'itcast'@'localhost' identified by '123456';
-- 可以在任意主机访问的数据库的符号是%;
create user 'itshabi'@'%' identified by '123456';
-- 修改用户密码
alter user 'itshabi'@'%'  identified with mysql_native_password  by'123';
-- 删除用户
drop user 'itshabi'@'%';