MYSQL学习笔记
创建
-
数据库
create database databaseName;
-
表
create table adminInfo( # 类型 关键字 唯一值 不允许为空 自增 ID int primary key unique not null auto_increment, # varchar 不固定长度 UserName varchar(150) unique , Password varchar(150), # 默认值为 0 Sex tinyint default 0, # 固定长度为11位 Mobile char(11) unique , # 调用内置函数 当前时间 now() CreTime datetime default now(), LastLogin datetime, IsDelete tinyint default 0, # 添加索引 index (ID,UserName,Mobile) );
插入
-
表
insert into adminInfo(username, password, sex, mobile) VALUES('test','test',null,'13699996666');
##查询
分页
显示10条记录
SELECT * FROM tablename LIMIT 0,10
第n页显示10条记录
SELECT * FROM tablename LIMIT (n-1)*10, 10
更新
-
表
UPDATE adminInfo SET Password='1', file2='new_value2' WHERE ID=1;
常用
- 获取记录总数
SELECT COUNT(*) FROM tablename
- 区间查询
SELECT * FROM tablename WHERE tablename.cloumns BETWEEN 1 and 3
删除
高级操作
explain
type
常见的6种情况:all, index, range, ref ,eq_ref, const。从左到右,效率依次增强。
all
全盘扫描
index
通过索引来查找
range
有范围的索引扫描
ref
使用索引,但索引值不唯一,有重复。找到第一条数据,仍然不停止继续在目标附近的小范围内扫描。好处是并不会全盘扫描。
ref_eq
使用索引加主键(或唯一性)
const
主键在放置到where后面作为前提条件,另外性能还取决于mysql的优化器。