目录

1. mysql的安装与配置

2. SQL基础

3.mysql的数据类型

4.运算符

5.常用函数

5.1字符串函数

5.2 数值函数

5.3日期和时间函数

5.4.流程函数

5.5.其他函数

6.图形化工具的使用


1. mysql的安装与配置

可以使用netstat -nlp来查看端口状态

2. SQL基础

常用语句关键字

create,drop,alter;insert,delete,update,select;grant,revoke;

desc可以查看表定义,要看更全面的信息,可以使用show create tabel table_name;

3.mysql的数据类型

整型,有一个autoincrement的属性,一般从1开始,一个表最多只能有一个,需要not null,定义为primary key或者unique;

decimal 定点小数,与浮点小数相对应;

timestamp,一张表只能有一个默认为current_timestamp;多个的话默认值是0;会受时区的影响,表示的范围有限,使1970-1-1 到2038的某一天;

char,检索时会自动删除尾部的空格;

ENUM,插入不在范围时,不报错,默认使用第一个值;

SET,集合

4.运算符

算数:+,-,*,/,%;

比较:>,<=,<>,!=,>=,<=,BETWEEN,IN,IS NULL,IS NOT NULL,LIKE,REGEXP或者RLIKE(正则表达式匹配);

逻辑:NOT(!),AND(&&),OR(||),XOR

位运算:&,|,^,~,<<,>>。左右移可以代替幂运算等会提升性能。

5.常用函数

5.1字符串函数

concat(s1,s2,……Sn),连接s1,s2……sn为一个字符串;

insert(str,x,y,instr),将字符串str从第x位置开始,y个字符长度的字串替换为字符串instr;

LOWWER(str),变小写;

UPPER(str),变大写;

LEFT(str,x),返回str最左边的x个字符;

RIGHT(str,x),返回右边;

LPAD(str,,n,pad),使用字符串pad对str最做左边填充,直到长度为n个字符;

RPAD(str,n,pad),右边填充;

LTRIM,RTRIM,TRIM,去除左边,右边,或者全部空格。

REPEAT(str,x),str重复x次

REPLACE(str,a,b) b代替str中的所有a;

STRCMP(s1,s2),比较

SUBSTRING(STR,y) 返回长度为y的字串

5.2 数值函数

ABS(x)

绝对值

CELL(x)

大于x的最小整数,即向上取整,注意负数的向上

FLOOR(x)

小于x的最小整数,注意负数

MOD(x)

x/y的模

RAND()

0-1的随机值

ROUND(x)

x四舍五入有y位小数的值

TRUNCATE(x)

x截断为y位小数的值

 

 

 

 

 

 

 

 

利用ceil与rand可生成任意整数,如0-100

ceil(rand()*100)

5.3日期和时间函数

CURDATE()

当前日期

CURTIME()

当期时间

NOW()

当前日期和时间

UNIX_TIMESTAMP(date)

返回日期date的unix时间戳

FROM_UNIXTIME()

返回unix时间戳的日期值

WEEK(date)

date是一年中的第几周

YEAR(date)

date的年份

HOUR(date)

date的小时值

MINUTE(date)

date的分钟值

MONTHNAME(date)

date的月份名(英文的January这种,不是阿拉伯数字)

DATE_FORMAT(date,fmt)

按fmt格式化date

DATE_ADD(date,INTERVAL expr type

一个日期或者时间加上一个时间间隔的值

DATEDIFF(expr,expr2)

之间的天数

 

 

 

 

 

 

 

 

 

 

 

 

 

5.4.流程函数

用的不多,先记一下吧

IF(value,t,f)

如果value为真,返回t,否则返回f

IFNULL(value1,value2)

如果value1不为空,返回value1,否则返回value2

CASE WHERE[value1] THEN [result1]……ELSE [default] END

value1为真,则返回result1,否则返回default

CASE [expr] WHEN [value1] THEN [result1] …… ELSE [default] END

如果expr等于value1,则返回result1,否则返回default

 

 

 

 

 

 

5.5.其他函数

DATABASE()

当前数据库名

VERSION()

当前版本

USER()

当前登陆的用户名

INET_ATON(IP)

IP地址的数字表示

INET_NTOA(num)

返回数字 代表的Ip地址

PASSWORD(str)

str的加密版本

MD5(str)

返回str的MD5值

 

 

 

 

 

 

 

 

6.图形化工具的使用

MySQL WorkBench

可以数据建模,在数据库设计阶段,之后还可以直接生成sql语句,以后有需要 可以试下