上学的时候学习数据库,也是用的mysql的可视化图形界面,非常的方便简介。
现在其实工作中不是很多用到数据库,但是数据库基础相关也是行业内必备的一项技能。
最近要重新学习一下数据库,所以顺便做一些笔记,方便以后查阅。
可视化图形界面对表的创建、设计、填入数据等是非常方便的,这里就不做记录,只简单的记录下DOS界面下对数据库的增删改查操作。
一、数据库操作
1.连接数据库
mysql -u root -p (用户名为root,输入密码,成功连接数据库)
2.创建数据库
create database 数据库名;(例如以下,创建一个名为tryagain的数据库;注意:分号十分重要呀!mysql的命令终止符为;)
3.查看数据库
show databases;(查看当前创建的所有数据库)
4.选择数据库
use 数据库名;(例如以下,选择名为tryagain的数据库)
5.删除数据库
drop database 数据库名;
二、数据表操作
1.创建数据表
首先看下设计表的可视化界面:
这样可以比较直观的得到创建一个数据表的必要条件:表名、字段名、字段类型;可选条件:是否为主键、是否递增、不能为空等
以学生表为例,语法:
create table table_name(column_name column_type);
table_name:表名,column_name:字段名,column_type:字段类型
例如以下,创建一个名为 student的表,not null-->字段不能为空,AUTO_INCREMENT-->自动递增(一般 为主键),PRIMARY KEY-->设定为主键(可以设定多列为主键,用逗号分隔),charset-->设定编码
2.插入数据
insert into table_name(field1,field2,...fieldN)
VALUES
(value1,value2,...valueN)
field-->字段名,value-->属性,一一对应
3.查询数据
(1)读取数据表中的所有数据:select * from table_name;
(2)条件查询:select * from table_name where 条件;
(3)仅查询表中的一项或多项数值,当条件满足时:select field from table_name where 条件;
4.修改表数据
update table_name set field1=new_value1,field2=new_value2 where 条件;
5.删除表数据
delete from table_name where 条件;(注意!如果没有where条件,整个表的数据都会被删除!)
6.LIKE查询
select field1,field2 from table_name where field like xx;
可以使用LIKE代替等号,一般like通常与%一起使用,类似于一个元元符的搜索,可以结合and/or来指定一个或多个条件
7.UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
UNION会删除检索到的重复数据,如果想不删除重复数据则使用UNION ALL
select field1 from table1
union
select field2 from table2
where 条件
order by field
现在有两张表:
student表
class_student表
以下使用UNION从student表和class_student表中查询出所有不同的s_id
UNION ALL使用,不删除重复数据
8.ORDER BY排序
(1)升序
select * form table_name order by field ASC(如果不强调默认是升序)
(2)降序
select * from table_name order by field DESC
9.GROUP BY 分组
首先创建一个数据表,如下图
使用GROUP BY按照姓名将数据表进行分组
select field1,field2 from table_name group by field
以下,按照用户名进行分组,并统计用户名在数据表中出现的次数
select field,count(*) from table_name order by field order by field;
WITH ROLLUP——>可以在分组统计的基础上再进行统计
以下,按照姓名进行分组,并统计每个人签到次数的总和
select field1,field2,sum(field) as 别名 from table_name group by field with rollup;
其中 NULL为所有人signin_count的总和
10.删除数据表
DROP TABLE table_name;
本来要写一一篇连表查询的笔记,但是在查找资料的过程中,发现一篇很优秀的博客,如果我再写可能也没有那么通俗易懂,所以把博客地址贴在下面,方便以后查阅
PS:一个写的比较优秀的博客http://www.zsythink.net/