mysql日期函数大全

今天药忘吃喽~ 2023-08-17 16:51 146阅读 0赞
  1. #查询某日期是星期几(1=星期天,2=星期一,…………,7=星期六)。
  2. SELECT DAYOFWEEK('2019-09-23')
  3. #查询某日期是星期几(0=星期一,1=星期二,…………,6=星期天)。
  4. SELECT WEEKDAY('2019-09-29')
  5. #查询该日期为当月的第几天(1-31) 。
  6. SELECT DAYOFMONTH('2019-09-29')
  7. #查询该日期为当年的第几天(1-366) 。
  8. SELECT DAYOFYEAR('2019-09-29')
  9. #查询某日期的月份(1-12)。
  10. SELECT MONTH('2019-01-29')
  11. #查询某天的星期,返回英文单词。
  12. SELECT DAYNAME('2019-09-29')
  13. #查询某日期的月份,返回英文单词。
  14. SELECT MONTHNAME('2019-09-29')
  15. #查询某日期的季度(1-4)
  16. SELECT QUARTER('2019-11-28')
  17. #查询某日是一年的第几天,第二个参数可选,默认为服务器的默认星期模式,
  18. #查询服务器的默认星期模式:SHOW VARIABLES LIKE 'default_week_format';
  19. #即一个星期从星期几开始,(0-7分别表示新的一周从周日-周六开始)。
  20. SELECT WEEK('2019-01-06')
  21. SELECT WEEK('2019-01-01','1')
  22. #查询日期的年份(在1000-9999)。
  23. SELECT YEAR('2019-01-06')
  24. #获取小时数(0-23)。
  25. SELECT HOUR('2019-01-06 13:05:03')
  26. SELECT HOUR('13:05:03')
  27. #返回分钟数(0-59)。
  28. SELECT MINUTE('2019-01-06 13:59:03')
  29. SELECT MINUTE('13:59:03')
  30. #返回秒数(0-59)。
  31. SELECT SECOND('2019-01-06 13:59:03')
  32. SELECT SECOND('13:59:03')
  33. #给某日期新增月份后返回日期(日期格式YYMM或YYYYMM,建议使用后者。)。
  34. SELECT PERIOD_ADD('201909','-14')
  35. SELECT PERIOD_ADD('201909','14')
  36. #查询两个日期之间的月份数。
  37. SELECT PERIOD_DIFF('201909','201909')
  38. SELECT PERIOD_DIFF('201809','201909')
  39. SELECT PERIOD_DIFF('201909','201809')
  40. #给某日期减少或增加秒钟数(年用year、月month、天用day、小时用hour、分钟用minute)。
  41. SELECT DATE_ADD('1999-12-31 23:59:59',INTERVAL 1 SECOND)
  42. SELECT DATE_SUB('1999-12-31 23:59:59',INTERVAL 1 SECOND)
  43. SELECT ADDDATE('1999-12-31 23:59:59',INTERVAL 1 SECOND)
  44. SELECT SUBDATE('1999-12-31 23:59:59',INTERVAL 1 SECOND)
  45. #复合单位如下,即对该时间进行多个单位时间的操作。
  46. SELECT SUBDATE('1999-12-31 23:59:59',INTERVAL '1 1' HOUR_MINUTE)
  47. SELECT SUBDATE('1999-12-31 23:59:59',INTERVAL '1 1' MINUTE_SECOND)
  48. SELECT SUBDATE('1999-12-31 23:59:59',INTERVAL '1 1' DAY_HOUR)
  49. SELECT SUBDATE('1999-12-31 23:59:59',INTERVAL '1 1' YEAR_MONTH)
  50. #格式化日期(这里列举常用的几种模式)。
  51. SELECT DATE_FORMAT('2009-08-13 10:08:52','%Y年%m月%d日%H时%i分%s秒')
  52. SELECT DATE_FORMAT('20090813100852','%Y-%m-%d %H:%i:%s')
  53. #格式化日期,该函数只能处理小时、分钟和秒。
  54. SELECT TIME_FORMAT('2009-08-13 10:08:52','%H时%i分%s秒')
  55. SELECT TIME_FORMAT('20090813100852','%H:%i:%s')
  56. #返回当前日期,格式为:%Y-%m-%d。
  57. SELECT CURDATE()
  58. SELECT CURRENT_DATE()
  59. #返回当前时间,格式为:%H:%i:%s。
  60. SELECT CURTIME()
  61. SELECT CURRENT_TIME()
  62. #返回具体时间,格式为:%Y-%m-%d %H:%i:%s。
  63. SELECT NOW()
  64. SELECT SYSDATE()
  65. SELECT CURRENT_TIMESTAMP()
  66. #返回日期对应的时间戳。
  67. SELECT UNIX_TIMESTAMP('2009-08-13 10:08:52')
  68. SELECT UNIX_TIMESTAMP('20090813100852')
  69. #生成毫秒级别的时间戳
  70. SELECT
  71. REPLACE(UNIX_TIMESTAMP(CURRENT_TIMESTAMP(3)),'.','') order_number ;
  72. #生成秒级别的时间戳
  73. SELECT UNIX_TIMESTAMP()
  74. #返回时间戳对应的日期。
  75. SELECT FROM_UNIXTIME(1250129332)
  76. SELECT FROM_UNIXTIME(1250129332,'%Y-%m-%d %H:%i:%s')
  77. #返回某时间在当年的这一天过了多少秒。
  78. SELECT TIME_TO_SEC('2009-01-01 00:01:50')
  79. #返回某时间在当天过了多少秒。
  80. SELECT TIME_TO_SEC('00:00:21');
  81. #两个日期之差,前面的日期减去后面的日期(结果返回-10)
  82. SELECT DATEDIFF('2008-08-8', '2008-08-18')

发表评论

表情:
评论列表 (有 0 条评论,146人围观)

还没有评论,来说两句吧...

相关阅读