日期和时间函数
修改时区的两种方式:
方式1:临时修改,设置系统的临时变量
SET time_zone =+‘8: 00’
方式2:打开 my.ini,添加以下配置
default-time_zone =’+‘8: 00’
获取当前服务器的时间: MySQL提供的NOW()、 LOCALTIME()、CURRENT_TIMESTAMP(),LOCALTIMESTAMP()
Select Now();
获取更精确的时间,毫秒时间:
Select Now(4);
SYSDATE()函数与NOW()函数一样也可以获取当前服务器的日期时间,区别在于:
SYSDATE()函数获取的是动态的实时时间.
NOW()函数获取的是语句开始执行的时间
#sysdate()与now的区别
Select Now(),Sysdate(),Sleep(2),Now(),Sysdate();
MySQL中提供了 FROM UNIXTIME()函数实现自定义格式化后日期的显示样式
Select From_unixtime(unix_timestamp(),'%W')'星期',
From_unixtime(unix_timestamp(),'%y/%c/%e')'日期',
From_unixtime(unix_timestamp(),'%H:%i:%s')'时间';
MYSQL为了方便获取更加精确的数据,提供了 EXTRACT()函数从指定的日期中获取想要的日期时间。
Select Extract (Day_second From Now());
添加或减少日期时间的实现方式:
方式1:直接加或减
日期时间+/- INTERVAL 表达式 日期时间类型
方式2:使用函数
DATE_ADD(日期时间, INTERVAL 表达式 日期时间类型)
DATE_SUB(日期时间, INTERVAL 表达式 日期时间类型)
- 加密函数
MySQL提供的加密函数主要用于对数据进行加密,相对明文存储,经过算法计算后的字符串不会被人直接看出保存的是什么数据,在一定程度上能够有效保证数据的安全性。
Select Benchmark(10,'3*7');
use shop;
Select Benchmark(1000000,
'Select name From sh_goods Where id=2');
- JSON函数
MySQL提供了两种方式将给定的值或键值对转换成JSON数组或JSON对象.
JSON_ARRAY([val[,val]…])#创建JSON数组
JSON_OBJECT([key, vall[, key,val]…]#创建JsON对象
Select Json_Array('cake',2,Null),
Json_Object('id',12,'name','Tom');
JSON_SET()、 JSON INSERT()或JSON_REPLACE()函数实现.这三个函数在使用时有以下几点的区别.
JSON_SET()函数添加的JSON数据不存在时,则添加,否则替换现有值
JSON_INSERT()函数添加的JSON数据不存在时,则插入,否则保留现有值
JSON_INSERT()函数添加的JSON只替换现有的值
- 其他常用内置函数
#转换IP地址与数字:
Select Inst_aton('192.168.22.11');
Select Inet_Ntoa(3232241163);
延迟语句执行时间:
Select Sleep(2);
在 MySQL中除了在创建表时设置AUTO_ INCREMENT自增序列实现唯一值外,还可以利用 MySQL提供的UUID()函数在同一时间同一空间实现唯一的标识符.
Select UUID();