登录mysql
mysql -u root -p
进入D盘 可以直接 d:
然后进入bin 文件夹 D:\mysql\mysql-8.1.0-winx64\bin
输入 mysql -u root -p 按下回车 输入密码 123123 ok
常用的数据库 指令
show databases;展示所有的数据库
create database itcast;创建名为itcast的数据库
create database itheima default charset utf8 设置字符集 创建的时候设置字符集
drop database 数据库名;
use 数据库名;
desc 表名字; 可查看当前表的结构 ;
修改表的语句
alter table 表名 add 字段名 类型 []//创建了一个表 就是创建了一行
alter table -- modify -- 新的数据类型
alter table --change 旧字段 新字段 新类型 [注释放里面comit]
alter table 表名 drop 字段名
重命名 表名 alter table emp rename to newname ;
创建索引 (升序或者降序)
CREATE INDEX indexname
ON tablename (propname [(length][ASC|DESC]);
//唯一索引
(1)alter table 表名 add unique index 索引名称(列名);
(2)create unique index 索引名称 on 表名(列名);
修改数据
添加数据 inset into 表名 (字段1,--2,--3)values(),(),(),(),(),();
update 表名 set 字段1=..,字段2= [where 条件]//不写条件默认修改所有的值
delete from 表名 [where 条件] 同上
DQL 数据查询语言
语法结构
SELECT 字段 select workplace as'工作地址' from 表名 选择所有的工作地址 select*from 所有的东西
FROM 表名
WHERE 条件
GROUP BY 分组字段列表
HAVING 分组后条件列表
ORDER BY 排序字段列表
LIMIT 分页参数
聚合函数 select count(字段 *) from emp; //聚合函数 count数总数
select avg(age) from emp ; //算平均数
select max(age) from emp ;//算最大值;
select sum(age) from emp where workplace='xi an' ;
having 分组结果 过滤 where在执行之前过滤
分组查询 select 列表 from 表名 [where] group by 分组字段名 分组就是表头
select workplace groupby workplace where age<=45 having count (*)>=3 对结果进行过滤
where与having区别
where不能对聚合函数判断 而having可以 where是分组前进行过滤 而
排序 升序降序
select *from emp order by age asc ,enterdata desc 先年龄 后入职时间排序
分页查询
select 字段列表 form 表名 limit 起始索引 查询记录数
起始索引=(查询页码-1)每页显示记录数 从零开始*******
查的是第一页数据 索引就可以省略 简写为limit 10
select * from emp limit 0,10;
select * from emp where age=1||age|| .age in (11.33)
select * from emp where and =male 0<age<40 having name =3 like'---'
一个下划线代表一个字 三个就代表三个字
select gender, counter(*)*from emp where age<60 groupby gender
条件查找方法 先select from emp groupby gender
然后 加东西 select gender ,count(*) from emp 条件 where age<60 -------
select name,age from emp(where age<35) order by age , worktime e
select * from emp(where age between 20 40 and gender=male order by age ,worktime
前几个员工就是limmit 几 放最后把
总结一下
- 先把 基础写出来 select name,age from emp 我要什么 最后要查出来什么 就放select后面
- 表之后 加条件 进行过滤
- group by 是最基础的 作为分组的依据 先写好这个 (如果要的hua)
- limit是最后面的
- from 表名 where 条件 group by 分组的条件 select 字段列表 选择 order by 排序 limit 分页 having最后过滤