一、数据库类型
关系性数据库:以行和列的形式展示,行与列的形式组织起来的数据集合。
常见的关系性数据库:Access、MySQL、SQL Server、Oracle、Sybase、DB2
非关系性数据库:以kay:value模型,组要解决海量数据下的数据库性能和扩展能力。
常见的非关系性数据库:HBase、MongoDB、Redis、Memcached。
二、MySQL
(1)MySQL常见数据类型
int:整型,可以-2的31次方到2的31次方减1之间的整数
float:近似数值型,供浮点数使用
char:字符型,指定列长,搜索速度快
varcher:字符型,指定最大长度,减小内存使用
(2)约束
PRIMARY KEY:主键约束
FOREIGN KEY:外键约束
UNIQUE:唯一约束
CHECK:检查约束(MySQL中使用无效)
DEFAULT:默认约束
NULL:空值约束
(3)数据定义语言(DDL)
create table 表名() #创建表
create index 索引名 #创建索引
alter table 原表名 rename to 目标表名 #修改表名
alter table 表名 add 字段名 字符类型 约束 #新增字段
alter table 表名 change 原字段名 新字段名 字符类型 约束 #修改字段属性
alter table 表名 modify(列名 数据类型) #修改字段类型,MySQL不支持该语法
alter table 表名 drop column 字段名 #删除列
drop table 表名 #删除表
drop index 索引名 #删除索引
(4)数据操纵语句(DML)
insert into 表名(列名,列名……) values('',''……) #插入数值
insert into 表名(列名,列名……)select 语句 #将查询的数据对应插入表中
update 表名 set 列名=‘更新值’ where 条件 #更新数值,多个字段使用逗号隔开
delete from 表名 where 条件 #删除数值
truncate from 表名 #清空表数据,保留表结构
(5)数据查询语句
select 搜索列表,多个用逗号隔开
from 表名,多个用逗号隔开
where 搜索条件
group by 分组表达式
having 子搜索条件,当聚合函数为条件时使用,需要和group by一起使用
order by 排序,asc|desc 升序|降序
limit m,n 分页表达式,从m+1行开始取n行(MySQL8.0版本,使用limit n offset m进行,oecale可以使用rownum字典进行分页)
disrinct 字段名 # 去重,删除数据重复的行
模糊匹配:
[not] like 模糊条件匹配
%百分号:匹配任意长度字符
_下划线:匹配任意单个字符
UNION和UNION ALL
UNION在进行表链接后会筛选掉重复的记录,并对所产生的结果集进行排序运算,删除重复的记录再返回结果。而UN