Mysql学习——函数、事务、视图

常用函数
函数分类:

字符串函数
数值函数
日期和时间函数
流程函数
其他函数(数据库、系统相关)
一、字符串函数

字符串函数concat(s1,s2…sn)
将传入的字符串连成一个字符串
任何字符串与null进行连接的结果都是null

insert(str,x,y,instr)
将字符串str从x位置开始,y个字符串长的子串替换为指定的字符

LOWER(Str)和UOOER(str)
把字符串转换成小写或者大写

LEFT(str,x)和RIGHT(str,x)
分别返回字符串最左边的x个字符和最右边的x个字符
如果第二个参数为null,那么就不返回任何字符

LAPD(str,n,pad)和RPAD(str,n,pad)
用字符串pad对str最左边或最右边进行填充,直接到长度为n个字符串长度

LTRIM(str)和RTRIM(str)
去掉字符串当中最左侧和最右侧的空格

TRIM(str)
去掉字符串左右的空格

REPEAT(str,x)
返回str重复x次结果

REPLACE(str,a,b)
用字符串b替换字符串str中所有出现的字符串a

SUBSTRING(str,x,y)
返回字符串str中的第x位置起y个字符串长度的字符

二、数值函数

ABS(x)
返回x的绝对值

CEIL(x)
小数部位零部分上取整,即向上取最近的整数(只要有小数点就进1)

FLOOR(x)
向下取整

MOD(x,y)
返回x/y的摸(余数)

RAND()
返回0-1内容的随机数

三、日期相关函数

CURDATE()
返回当前日期(年月日)

CURTIME()
返回当前的时间(时分秒)

NOW()
返回当前的日期和时间(年月日时分秒)

UNIX_TIMESTAMP()
返回当前的时间戳

FROM_UNIXTIME(unixtime)
将一个时间戳转换成日期

WEEK(DATE)
返回当前是一年中第几周

YEAR(DATE)
返回所给日期是哪一年

HOUR(TIME)
返回当前时间的小时

MINUTE(TIME)
返回当前分钟

DATE_FORMAT(date,fmt)
按字符串格式化日期date值

SELECT DATE_FORMAT(now(),’%M,%D,%Y’);

DATE_ADD(date,interval expr type)
计算日期间隔
SELECT DATE_ADD(now(),interval 31 day)

DATEDIFF(date1,date2)
计算两个日期相差天数
四、流程函数

IF(value,t,f)
如果value是真,返回t,否则返回f
SELECT IF(2>3,‘yes’,‘no’)

IFNULL(value,value2)
如果value1不为空,返回value1否则返回value2

CASE WHEN THEN END
判断

SELECT CASE WHEN 2>3 THEN ‘对’ ELSE ‘错’ END;

五、其他函数(重点))

DATABASE()
返回当前数据库名称
SELECT DATABASE();

VERSION()
返回当前数据库版本

USER()
返回当前登录用户

PASSWORD()
对str进行加密
返回str的MD5值

事务的ACID
原子性(Atomicity)
原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚
一致性(Consistency)
一致性是指事务必须使数据库从一个一致性状态变换到另外一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态
让数据保持一定上的合理性
一个商品出库时,仓库商品数量-1,对应用户的购物车中商品+1
隔离性(Isolation)
事务的隔离性是指并发的事务相互隔离,不能相互干扰
持久性(Durability)
事务的持久性是指事务一旦提交,对数据的状态变更应该被永久保存
事务的使用
开启事务

strat transaction;

提交事务

commit;

回滚事务

rollback;在提交之前可以回滚

视图
定义视图(v开头)

create view 视图名称 as select语句;

查看视图

show tables;

使用视图

select * from v_stu_score;

删除视图

drop view 视图名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值