本篇文章分享MySQL的基础学习,关于MySQL的安装自行搜索
如果忘记密码或者无法登录看链接:重置密码
1.基础介绍
mysql -u root -p 登录MySQL
exit; quit; \q; 退出MySQL
注意也可以在浏览器中访问:127.0.0.1/phpMyAdmin
注释:# “…….” /………./
2.数据库的增删改查
增:create database wwl;
删:drop database wwl;
改:alter database wwl charset utf8
查:show databases;
use database-name;选择数据库
show tables;查看数据库中的表
select passswd form user where user=’root’;(查看当前数据库表user用户为root得密码
show create database wwl;(查看指定得数据库)
select database();(查看当前在那个文件夹)
3.表的基础操作
1.基础查询
use database-name; 打开数据库表
show create database databases; 显示数据库结构
show tables;查看数据库中表
select * from table-name;查看表内容
desc table-name;查看表结构
2.表的增删改查
创建表(注意创建表的时候首先进入数据库show databases;或者use databases;)
create table user2(id int(7) AUTO_INCREMENT,
`username` VARCHAR(100) NOT NULL,
`password` VARCHAR(40) NOT NULL,
PRIMARY KEY ( id )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
修改表的操作
修改表名:alter table 旧表名 rename 新表名;
修改字段的数据类型:alter table 表名 modify 属性名 数据类型;(属性名就是字段名)
修改字段名:alter table 表名 change 旧属性名 新属性名 新数据类型;
增加字段名:alter table 表名 add 属性名1 数据类型 [完整性约束条件] [first | after 属性名2];
删除字段:alter table 表名 drop 属性名;
更改表的存储引擎:alter table 表名 engine = 存储引擎名;
3.数据库数据的增删改查
增加数据:insert into 表名(字段名1,字段名2...) values (值1,值2…);
insert into user22 (id,name,passwd)values(1,'anbei','123456');
还可以不指定字段名,但是添加的值的顺序要和字段在表中的顺序完全一致
insert into user22 values(2,'test','123456');
为表的指定字段增加数据
insert into user22 (name)values('anbei');
增加多条数据
insert into user22 (id,name,passwd)values(null,'anbei','123456'),(null,’aa’,’1414’);
删除数据:
Delete from 表名 where 条件表达式;
delete from user22 where id=1;
删除全部数据:delete from user22;
修改数据:update 表名 set 字段名1=值1 [字段名2=值2] where 条件表达式;
update user22 set passwd='aaaa' where id=2;
修改全部数据:update user22 set passwd='aaaa';
select * from tanle-name; 查询所有数据,*代表所有字段
查看某一字段:select passwd from user22;
按条件查询:
select 字段名1,字段名2…from 表名 where 条件表达式;
按关系查询:select * from user22 where id>2;
= <> != < <= > >=
带in的关键字查询; select * from user22 where id in(1,2,3);
select * from user22 where id not in(1,2);
空值查询: select distinct * from user22 where id is not null;
Distinct可以去掉一些重复的数值
4.mysql数据库数据的查询语句
带between and关键字的查询:select * | {字段名1,字段名2,...} from 表名 where 字段名 [not] between and 值1 and 值2;
select * from user22 where id between 1 and 3;
带like的查询(一般都会跟着*):select * from user22 where username like “%a%”;
带and的关键字查询:select * from user22 where id=2 and name=test;
带or的关键字的查询:select * from user22 where id=2 or name=test;
select * from user22 where id>2 and name=test or name=aa;
6.高级查询
聚合查询:count() 返回行数
select count(*) from users;
select count(id) from users;
sum()求和
avg()求平均值
max()返回某列最大
min() 返回某列最小值
分组查询:select * FROM users where GROUP BY name;
select max(id) FROM users where GROUP BY name;
使用limit限制查询结果的数量
select * from users limit 1;
select * from users limit 2;
select * from users limit 2,10; (查询2-10的结果)
为表和字段取别名:
select * from users as u where u.id=1;
等价于select * from users where u.id=1;
where子查询(把内层查询结果当作外层拆线呢的比较条件)
select * from users where id in (select id from users where id>10);
exists型子查询
select * from users where exists (select * from users where id>10);