Mysql基础篇
启动服务:net start (服务名)
关闭服务:net stop (服务名)
常用命令:
use xxxx; 进入到xxxx库中。
show database; 查看当前连接下所有库。
show tables from xxxx; 查看xxxx库中的表。
show tables; 查看当前库中的表。
select database(); 查看自己在哪个库。
Desc xxx; 查看表的结构。
select version(); 查看版本。
函数:
字符函数:
length();
concat(); 拼接n个字符(串)。
upper();lower(); 转大小写。
substr(str,pos); 从第pos开始截到最后。
substr(str,pos,len); 从第pos开始截len长度。
instr(str1,str2); 返回子串第一次出现的下标,如果没有就返0。
trim(); 去掉前后的空格。
trim(str1 from str); 去掉str中的str1。
Lpad(str,len,char); 从左边填充len个char字符。
Rpad(str,len,char); 从右边填充len个char字符。
replace(str,from_str,to_str); 把str中的from_str替换成to_str。
数学函数:
round(double); 四舍五入。
round(double,len); 四舍五入,保留len位。
truncate(double,len); 直接截断,保留len位。
ceil(double); 向上取整。
float(double); 向下取整。
mod(int,int); 取余。
日期函数:
now(); 获取当前日期时间,如:2020-04-16 19:04:05。
curdate(); 获取当前日期,如:2020-04-16。
cuitime(); 获取当前时间,如:19:04:05。
year(now()); 获取当前年份,如:2020。类似的方法还有month,day,hour,minute,second。
str_to_date('2008-4-2 15:3:28','%Y-%m-%d %H:%i:%s'); 把字符串转换成date格式。
Date_format(now(),’%y年%c月%d日’); 把date类型转成字符串。
Datediff(date a,date b); 返回相差的天数。
流程控制函数:
if(ex1,ex2,ex3); 功能同?:表达式。
case when then else;
分组函数:
count(); 计算非空的个数。
sum();average(); 计算数值型的。
max();min(); 可以计算任何类型。
sql99语法:
内连接:取交集
等值连接,非等值连接,自连接。
外连接:
左外连接:左边的是主表。
![]()
右外连接:右边的是主表。
全外连接:mysql暂时不支持。
交叉连接:
cross join on 就是笛卡尔积。
DML:
create table 表名
insert into 表名 values() null的字段不能省,一一对应。
update 表名 set 字段=xxx where ...
delete from 表名 where ...
DDL:
建表/库,删表/库前用if exits判断
create database/table 库/表名 建库/表
drop database/table 库/表名 删除库/表名
alter table 表名 add/change/modify/drop column 字段 约束 添加/修改字段名和约束,修改字段类 型和约束,删除列。
基本数据类型:
int 4字节 32位。
float(D,M) 4字节 D是整数和小数的总位数,M是小数的位数,超出就变成临界值。
char(M) 固定空间,效率高。
varchar(M) 弹性空间,效率低。
约束:
Primary Key 主键,唯一。
unique 唯一键,可以有多个。
foreign key xx reference xx 外键引用,一般用表添加。
not null 非空键。



浙公网安备 33010602011771号