学习NoSQL的时候,发现可以再回过头来复习一遍MySQL,当初学数据库的时候都是重视理论,发现到做项目的时候,很多语句都不会,所以趁着这个机会,一起把MySQL的知识再重新温习一遍,并做好记录。
1、创建数据库
数据库是database,所以就很容易创建了
> create database dataSource;
(注:这里有一点和NoSQL不一样,那就是NoSQL语句后面可以不加分号,但是MySQL后面必须加分号)
创建结果如下:
2、删除数据库
> drop database dataSource;
删除结果如下:
3、选择数据库
这里的选择和NoSQL是一样的 ,都是用use
> use dataSource;
4、 创建数据表
> create table admin(
id int not null auto_increment primary key,
name varchar(30) comment '账号',
pwd varchar(30) comment '密码'
)default charset=utf8;
效果如下:
5、删除数据表
> drop table admin;
6、插入数据
> insert into admin(name,pwd)values("admin","123456");
insert into admin(name,pwd)values("admin2","123456");
insert into admin(name,pwd)values("admin3","123456");
insert into admin(name,pwd)values("admin4","123456");
结果如下:
7、查询数据
7.1 使用*代替其他字段,返回该表的所有字段数据
select * from admin;
结果如下:
7.2 使用where子句查询
select * from admin where name="admin2";
7.3 使用where子句查询 并用and或者or实现多条件查询
select * from admin where name="admin" or name="admin4";
8、更新数据
MySQL中使用更新数据的关键词是update,具体例子如下:
> update admin set name="root" where name="admin3";
9、删除数据
MySQL中使用删除数据的关键词是delete,具体例子如下:
> delete from admin where name="admin4";
10、LIKE子句
> select * from admin where name like 'ad%';
11、排序
对student表中wage字段进行升序排列
>select * from student order by wage ASC;
结果如下图:
这里 ASC是升序排列,DESC是降序排列
12、分组
(1) 这里对表中的age字段进行分组
select age,count(*) from student group by age;
(2) 使用 WITH ROLLUP
我们先统计每个年龄的人数,再算出他们的wage的总和
select age,sum(wage) as wage_count from student group by age with rollup;
结果如下图: