了解数据库类型及MySQL数据库常用命令行
一、数据库
1、数据库DataBase(DB):存储数据的仓库。
2、数据库的分类
(1) 关系型数据库(sql数据库):
中型:mysql(端口号3306)、sql server
大型:Oracle(端口号1521)
(2) 非关系型数据库(no-sql数据库)
MongoDB、Redis
3、mysql软件:
Sql yog:数据库客户端工具(图形用户界面工具)方便操作数据库。
类似的工具:Navicat
二、命令
1、选择数据库:
use 数据库名;
2、注释:解释程序
(1)单行注释:--空格注释的内容
(2)多行注释:/*
注释的内容
*/
三、数据类型
1、整型(整数):int
2、浮点型(小数):保存小数的近似值 double
3、字符(汉字、字母)
固定长度:char(长度)
可变长度:varchar(长度)
姓名 char(10) varchar(10)
张三 10 2
张三丰 10 3
爱新觉罗张三 10 6
4、日期:datetime
注意:不是数字类型的必须使用单引号(英文)
四、插入数据
insert into 表名(列名1,列名2) values(数据1,数据2);
注意:数据必须与列名对应
五、修改数据
update 表名 set 要改的列名=新值 where 条件;
六、 删除数据
delete from 表名 where 条件;
七、查询
1、查询表中所有的数据
select * from 表名;
2、条件查询
select * from 表名 where 条件;
3、查询部分列的数据
select 列名1,列名2 from 表名 where 条件;
2、where 条件
(1) 比较运算符(关系运算符)
> < >= <= = != (不等于)
(2) 逻辑运算符
逻辑与:and 同时满足的多个条件之间
逻辑或:or 满足其中一个条件的
逻辑非:not
(3) 在……之间:包括下限和上限的两个数
列名 between 下限 and 上限
(4)等于括号中的任意一个数
名 in (数据1 , 数据2 , 数据3)
(5)空值
是空值:列名 is null
不是空值:列名 is not null
(6)模糊查询
列名 like ‘ ’ 通配符:_ 任意的单个字符 % 任意的0个或多个字符
八、排序
1、order by 列名
2、升序(默认):asc
3、降序:desc
九、限制查询
1、查询前m行
limit m
2、跳过m行,查询n行
limit m,n
十、聚合函数
最大值:max(列名)
最小值:min(列名)
和:sum(列名)
平均值:avg(列名)
统计个数:
count(列名):不包含这个列中的null值
count(*):所有行的行数,包含null值
十一、分组
group by 列名
十二、分组条件
having 带有聚合函数的条件
十三、带排序的聚合查询格式
select *或列名
from 表名
where 不带聚合函数的条件
group by 列名
having 带聚合函数的条件
order by 列名
十四、子查询
1、也叫嵌套查询:在一条查询语句中有另一条查询语句
2、格式
select *或列名
from 表名
where 列名 运算符 (select 列名 from 表名 where 条件)
3、如果括号内的查询结果多于1个值时:
(1)、in()
(2)、>all() 等同于>(最大值)
(3)、<all() 等同于<(最小值)
十五、多表联接查询
1、两个表内联接
(1) 方式一:
select 列名
from 表名1 , 表名2
where 表名1.同名列=表名2.同名列
(2) 方式二:
select 列名
from 表名1 join 表名2
on 表名1.同名列=表名2.同名列;
十六、创建一个数据库
create database 表名;
十七、查看当前存在哪些数据库
show databases;
十八、创建一个数据库表
create table 表名(name varchar(20),sex char(1));
十九、查看当前数据库中存在哪些表;
show table;