欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MYSQL常用函数_MySQL

程序员文章站 2022-06-08 10:13:30
...


########### 日期函数 ###########

select now(); -- 当时 yyyy-mm-dd hh:mm:ss
select curdate(); -- 当天 yyyy-mm-dd
select (curdate() - interval (weekday(curdate()) + 1) day); -- 本周第一天
select (curdate() - interval (day(curdate()) - 1) day); -- 本月第一天
select (curdate() - interval (dayofyear(curdate()) - 1) day); -- 本年第一天
select (now() + interval 1 month); -- 下个月今天
select last_day(curdate()); -- 本月最后一天
select last_day(curdate()) + interval 1 day; -- 下月第一天

select date_format('2014-07-08 23:59:59','%Y-%m-%d %H:%i:%s') -- str to date

-- 查找今天的发帖
1. CREATETIME >= date_format(now(),'%Y-%m-%d') and CREATETIME 2. date_format(CREATETIME,'%Y-%m-%d') = LEFT(now(),10)
3. date_format(CREATETIME,'%Y-%m-%d') = date_format(now(),'%Y-%m-%d')
4. CREATETIME like CONCAT(date_format(now(), '%Y-%m-%d'), '%')
5. CREATETIME >= curdate() -- and CREATETIME


UNIX_TIMESTAMP(SUBSTR(FROM_UNIXTIME(r.REPAYMENT_TIME)FROM 1 FOR 10)) UNIX_TIMESTAMP(SUBSTR(NOW()FROM 1 FOR 10))
==>
r.REPAYMENT_TIME and r.REPAYMENT_TIME >= UNIX_TIMESTAMP(curdate() + interval 1 day)

########### 其他函数 ###########
TRUNCATE(X ,D )
ROUND(X ,D )
select 12000/4578, truncate(12000/4578, 10), truncate(12000/4578, 8), round(12000/4578, 8)

IF(expr1,expr2,expr3) --> case when expr1 then expr2 else expr3 end
IFNULL(expr1,expr2) --> case when expr1 is not null then expr1 else expr2 end
CONCAT(str1 ,str2 ,...) --> concat('%', ? '%')
select CONCAT_WS('|', '1','2','3')