. 日期和时间函数
- now() :返回当前日期时间。示例: select now() from dual;
- curdate() :返回当前日期。示例: select curdate() from dual;
- curtime() :返回当前时间。示例: select curtime() from dual;
- year(日期) :返回指定日期的年。示例: select year('2025-4-22') from dual;
- month(日期) :返回指定日期的月。示例: select month('2025-4-22') from dual;
- day(日期) :返回指定日期的日。示例: select day('2025-4-22') from dual;
- timestampdiff(间隔类型, 日期时间1, 日期时间2) :返回两个日期时间之间相隔的时间戳,单位由间隔类型指定 。间隔类型包括 year 、 month 、 day 、 hour 、 minute 、 second 。示例: select timestampdiff(day,'2000-10-23','2025-4-22') from dual;
- date_format(date,pattern) :格式化日期。示例: select date_format(now(), '%Y年%m月%d日 %H:%i:%s') from dual;
- 格式化参数:
- %Y :表示四位数字的年
- %m :表示两位数字的月
- %d :表示两位数字的日
- %H :表示两位数字的小时(24小时制)
- %i :表示两位数字的分钟
- %s :表示两位数字的秒数
.条件判断函数
- if(条件, 表达式1, 表达式2) :如果条件为真,则返回表达式1;否则返回表达式2 。示例: select if(5>2,'yes','no') from dual;
- ifnull(v1,v2) :如果 v1 不为 null ,则返回 v1 ,否则返回 v2 。示例: select ifnull(null,'0') from dual
- case when [f1](coco://sendMessage?ext=%7B%22s%24wiki_link%22%3A%22https%3A%2F%2Fm.baike.com%2Fwikiid%2F1615360517138333753%22%7D&msg=f1) then v1 when f2 then v2 ... else v end :如果 f1 为真,则返回 v1 ;如果 f2 为真,则返回 v2 ……否则返回 v 。示例:
- select case when 5>2 then 'yes' end from dual;
- select case when 5>2 then 'yes' else 'no' end from dual;
- select case when 5<2 then 'one' when 6>4 then 'two' else 'three' end from dual;
.系统信息函数
- database() :返回当前操作的数据库。示例: select database() from dual;
- user() :返回当前登陆用户。示例: select user();
- version() :返回MySQL服务器的版本。示例: select version();