> 데이터 베이스 > MySQL 튜토리얼 > MySQL에 날짜 기능이 도입되었습니다.

MySQL에 날짜 기능이 도입되었습니다.

coldplay.xixi
풀어 주다: 2021-03-02 09:11:29
앞으로
2526명이 탐색했습니다.

MySQL에 날짜 기능이 도입되었습니다.

날짜 함수 유형:

(1) 현재 날짜를 가져오는 함수와 현재 시간을 가져오는 함수
(2) 현재 날짜와 시간을 가져오는 함수
(3) UNIX 타임스탬프 함수
(4 ) UTC 날짜를 반환하는 함수와 UTC 시간을 반환하는 함수
(5) 월(date)과 월 이름(date)을 구하는 함수
(6) 주 dayname(d), dayofweek(d)를 구하는 함수 그리고 weekday(d) )
(7) 주 수를 구하는 week(d) 및 dayofyear(d) 함수
(8) 일 수를 구하는 dayofyear(d) 및 dayofmonth(d) 함수
( 9) 연도, 분기, 시, 분, 초 시계 기능을 가져옵니다.
(10) 날짜 추출의 지정된 값을 가져오는 함수(날짜에서 입력)
(11) 시간과 초를 변환하는 함수
(12) 날짜와 시간을 계산하는 함수
(13) 날짜와 시간 형식을 지정하는 함수

(관련 무료 학습 추천 : mysql 동영상 튜토리얼)

(1) 현재 날짜를 가져오는 함수와 현재 시간을 가져오는 함수

1.curdate() 및 current_date()
[예] 날짜 함수 사용 Get the current date of the system, SQL 문은 다음과 같습니다. 获取系统当前日期,SQL语句如下:

mysql> select curdate(),current_date(),curdate()+0;+------------+----------------+-------------+| curdate()  | current_date() | curdate()+0 |+------------+----------------+-------------+| 2019-08-18 | 2019-08-18     |    20190818 |+------------+----------------+-------------+1 row in set (0.00 sec)
로그인 후 복사
  • curdate()+0表示将当前日期值转换为数值型。

2.curtime()和current_time()
【例】使用时间函数获取系统当前时间

mysql> select curtime(),current_time(),curtime()+0;+-----------+----------------+-------------+| curtime() | current_time() | curtime()+0 |+-----------+----------------+-------------+| 17:08:07  | 17:08:07       |      170807 |+-----------+----------------+-------------+1 row in set (0.00 sec)
로그인 후 복사
    curdate()+0은 현재 날짜 값을 숫자 유형으로 변환한다는 의미입니다.
2.curtime() 및 current_time()
[예제] 시간 함수 를 사용하여 시스템의 현재 시간을 가져옵니다. SQL 문은 다음과 같습니다.
mysql> select current_timestamp(),
    -> localtime(),
    -> now(),
    -> sysdate();+---------------------+---------------------+---------------------+---------------------+| current_timestamp() | localtime()         | now()               | sysdate()           |+---------------------+---------------------+---------------------+---------------------+| 2019-08-18 19:10:05 | 2019-08-18 19:10:05 | 2019-08-18 19:10:05 | 2019-08-18 19:10:05 |+---------------------+---------------------+---------------------+---------------------+1 row in set (0.05 sec)
로그인 후 복사
    curtime() +0은 현재 시간 값을 숫자 형식으로 변환한다는 의미입니다.

(2) 현재 날짜 및 시간을 가져오는 함수


current_timestamp(), localtime(), now() 및 sysdate() 네 가지 함수는 동일한 함수를 가지며 모두 현재 날짜 및 시간 값을 반환합니다.
  • [예] 날짜 및 시간 함수를 사용하여 현재 시스템 시간 및 날짜를 ​​가져옵니다. SQL 문은 다음과 같습니다.
mysql> select unix_timestamp(),unix_timestamp(now()),now();+------------------+-----------------------+---------------------+| unix_timestamp() | unix_timestamp(now()) | now()               |+------------------+-----------------------+---------------------+|       1566127316 |            1566127316 | 2019-08-18 19:21:56 |+------------------+-----------------------+---------------------+1 row in set (0.05 sec)
로그인 후 복사
  • (3) UNIX 타임스탬프 함수


    unix_timestamp(date) 매개변수 없이 호출되는 경우 유닉스 타임 스탬프(GMT 이후의 초 수, GMT는 1.1.1970)를 부호 없는 정수로 반환합니다.

      date는 날짜 문자열, 날짜/시간 문자열, 타임스탬프 또는 현지 시간 YY[YY]MMDD 형식의 숫자일 수 있습니다.
    1.unix_timestamp(date)

    [예제] unix_timestamp 함수를 사용하여 unix 형식의 타임스탬프를 반환합니다. SQL 문은 다음과 같습니다.

    mysql> select from_unixtime('1566127316');+-----------------------------+| from_unixtime('1566127316') |+-----------------------------+| 2019-08-18 19:21:56.000000  |+-----------------------------+1 row in set (0.00 sec)
    로그인 후 복사

    from_unixtime() 함수는 unix 타임스탬프를 공통 시간으로 변환합니다. format 및 unix_timestamp(date ) 함수는 서로 역함수입니다.

    2.from_unixtime(date)
    [예제] from_unixtime 함수를 사용하여 Unix 타임스탬프를 일반 형식의 시간으로 변환합니다. SQL 문은 다음과 같습니다.

    mysql> select utc_date(),utc_date()+0;+------------+--------------+| utc_date() | utc_date()+0 |+------------+--------------+| 2019-08-18 |     20190818 |+------------+--------------+1 row in set (0.05 sec)
    로그인 후 복사


    (4) UTC 날짜를 반환하는 함수 및 UTC를 반환하는 함수. 시간.


    1.UTC_DATE()
    [예제] utc_date() 함수를 사용하여 현재 UTC 날짜 값을 반환하는 경우 SQL 문은 다음과 같습니다.
    mysql> select utc_time(),utc_time()+0;+------------+--------------+| utc_time() | utc_time()+0 |+------------+--------------+| 11:32:27   |       113227 |+------------+--------------+1 row in set (0.00 sec)
    로그인 후 복사

    2.UTC_TIME()
    [예제] UTC_TIME() 함수 사용 현재 UTC 시간 값을 반환하려면 SQL 문은 다음과 같습니다.

    mysql> select month('2019-08-18');+---------------------+| month('2019-08-18') |+---------------------+|                   8 |+---------------------+1 row in set (0.00 sec)
    로그인 후 복사


    (5) 월 함수를 가져옵니다. 월(날짜) 및 월 이름(날짜)


    1.month(날짜)
    [예] 월을 사용합니다. () 함수를 사용하여 지정된 날짜의 월을 반환하는 SQL 문은 다음과 같습니다.
    mysql> select monthname('2019-08-18');+-------------------------+| monthname('2019-08-18') |+-------------------------+| August                  |+-------------------------+1 row in set (0.00 sec)
    로그인 후 복사

    2.monthname(date)
    [예제] Monthname() 함수를 사용하여 지정된 날짜의 월 이름을 반환합니다. 명령문은 다음과 같습니다:

    mysql> select dayname('2019-08-18');+-----------------------+| dayname('2019-08-18') |+-----------------------+| Sunday                |+-----------------------+1 row in set (0.00 sec)
    로그인 후 복사


    (6) dayname(d) 및 dayofweek(d ) 및 weekday(d)

    1.dayname(d)의 함수를 가져옵니다.

    [예] dayname() 함수를 사용하여 반환합니다.
      mysql> select dayofweek('2019-08-18');+-------------------------+| dayofweek('2019-08-18') |+-------------------------+|                       1 |+-------------------------+1 row in set (0.00 sec)
      로그인 후 복사
    • 2.dayofweek(d)
    • [예제] dayofweek 사용 () 함수는 해당 날짜에 해당하는 주 인덱스를 반환합니다.
      mysql> select weekday('2019-08-18 19:40:00'),
          -> weekday('2019-08-18');+--------------------------------+-----------------------+| weekday('2019-08-18 19:40:00') | weekday('2019-08-18') |+--------------------------------+-----------------------+|                              6 |                     6 |+--------------------------------+-----------------------+1 row in set (0.00 sec)
      로그인 후 복사

      3.weekday(d)


      weekday(d)는 d에 해당하는 요일 인덱스를 반환합니다. 0은 월요일, 1은 화요일, ... 6은 일요일을 나타냅니다.
      • [예제] weekday() 함수를 사용하여 날짜에 해당하는 근무일 인덱스를 반환합니다. SQL 문은 다음과 같습니다.
      mysql> select week('2019-08-18'),week('2019-08-18',0),week('2019-08-18',1);+--------------------+----------------------+----------------------+| week('2019-08-18') | week('2019-08-18',0) | week('2019-08-18',1) |+--------------------+----------------------+----------------------+|                 33 |                   33 |                   33 |+--------------------+----------------------+----------------------+1 row in set (0.05 sec
      로그인 후 복사

      (7) week(d) 및 dayofyear(d) 함수를 가져옵니다

      week(d) ) 날짜 d를 계산하면 이중 매개변수 형식을 사용하여 주가 일요일 또는 월요일에 시작하는지 지정할 수 있습니다. Mode 매개변수가 무시되면 default_week_format 시스템 인수의 값이 사용됩니다. 사용됩니다.


      1.week(d)
      [예제] week() 함수를 사용하여 특정 날짜에 대한 해당 연도의 주를 쿼리합니다.
      mysql> select week('2019-08-18',3),weekofyear('2019-08-18');+----------------------+--------------------------+| week('2019-08-18',3) | weekofyear('2019-08-18') |+----------------------+--------------------------+|                   33 |                       33 |+----------------------+--------------------------+1 row in set (0.05 sec)
      로그인 후 복사

      2.weekofyear(d)
      [예제] ] weekofyear( ) 사용 지정된 날짜에 대한 해당 연도의 주를 쿼리하려면 SQL 문은 다음과 같습니다.

      mysql> select dayofyear('2019-08-18');+-------------------------+| dayofyear('2019-08-18') |+-------------------------+|                     230 |+-------------------------+1 row in set (0.00 sec)
      로그인 후 복사


      (8) dayofyear(d) 및 dayofmonth(d)


      1.dayofyear() 함수 가져오기
      [예제] dayofyear() 함수를 사용하여 해당 연도에서 지정된 날짜의 위치를 ​​반환합니다. SQL 문은 다음과 같습니다.
      mysql> select dayofmonth('2019-08-18');+--------------------------+| dayofmonth('2019-08-18') |+--------------------------+|                       18 |+--------------------------+1 row in set (0.00 sec)
      로그인 후 복사

      2.dayofmonth()
      [예] dayofmonth() 함수를 사용하여 연도의 위치를 ​​반환합니다. SQL 문은 다음과 같습니다.

      mysql> select year('19-08-18'),year('98-02-19');+------------------+------------------+| year('19-08-18') | year('98-02-19') |+------------------+------------------+|             2019 |             1998 |+------------------+------------------+1 row in set (0.05 sec)
      로그인 후 복사


      (9) 연도, 분기, 시, 분, 초를 가져오는 함수입니다.

      1.YEAR(date)
      [예제] year() 함수를 사용하여 지정된 날짜에 해당하는 연도를 반환합니다. SQL 문은 다음과 같습니다.

      mysql> select quarter('19-08-18');+---------------------+| quarter('19-08-18') |+---------------------+|                   3 |+---------------------+1 row in set (0.00 sec)
      로그인 후 복사

      2.QUARTER(date)
      [예제] Quarter() 함수를 사용하여 지정된 날짜에 해당하는 연도를 반환합니다. Quarter의 경우 SQL 문은 다음과 같습니다.

      mysql> select minute('19-08-18 20:07:00');+-----------------------------+| minute('19-08-18 20:07:00') |+-----------------------------+|                           7 |+-----------------------------+1 row in set (0.00 sec)
      로그인 후 복사
      🎜3.MINUTE(time)🎜 [예제] Minute() 함수를 사용하여 지정된 날짜의 분 값을 반환합니다. time에 대한 SQL 문은 다음과 같습니다. 🎜
      mysql> select second('20:07:00');+--------------------+| second('20:07:00') |+--------------------+|                  0 |+--------------------+1 row in set (0.00 sec)
      로그인 후 복사
      로그인 후 복사
      🎜4.SECOND(time)🎜 [예] 사용 second() 함수는 지정된 시간의 초 값을 반환합니다. 🎜
      mysql> select second('20:07:00');+--------------------+| second('20:07:00') |+--------------------+|                  0 |+--------------------+1 row in set (0.00 sec)
      로그인 후 복사
      로그인 후 복사

      (10)获取日期的指定值的函数extract(type from date)

      【例】使用extract(type from date)函数提取日期或时间值。

      mysql> select extract(year from '2019-08-18') as col1,
          -> extract(year_month from '2019-08-18 20:46:01') as col2,
          -> extract(day_minute from '2019-08-18 20:46:01') as col3;+------+--------+--------+| col1 | col2   | col3   |+------+--------+--------+| 2019 | 201908 | 182046 |+------+--------+--------+1 row in set (0.00 sec)
      로그인 후 복사

      (11)时间和秒钟转换的函数

      1.time_to_sec(time)

      • time_to_sec(time)返回已经转化为秒的time参数。转换公式为:小时x3600+分钟*60+秒。

      【例】使用time_to_sec函数将时间值转换为秒值。

      mysql> select time_to_sec('20:34:00');+-------------------------+| time_to_sec('20:34:00') |+-------------------------+|                   74040 |+-------------------------+1 row in set (0.00 sec)
      로그인 후 복사

      2.sec_to_time(seconds)

      • sec_to_time函数返回值加上0值之后变成了小数值。
      • time_to_sec正好和sec_to_time互为反函数。

      【例】使用sec_to_time()函数将秒值转换为时间格式,SQL语句如下;

      mysql> select sec_to_time(2345),sec_to_time(2345)+0,
          -> time_to_sec('20:36:00'),sec_to_time('74040');+-------------------+---------------------+-------------------------+----------------------+| sec_to_time(2345) | sec_to_time(2345)+0 | time_to_sec('20:36:00') | sec_to_time('74040') |+-------------------+---------------------+-------------------------+----------------------+| 00:39:05          |                3905 |                   74160 | 20:34:00.000000      |+-------------------+---------------------+-------------------------+----------------------+1 row in set (0.05 sec)
      로그인 후 복사

      (12)计算日期和时间的函数。

      MySQL中计算日期和时间的格式:
      MySQL에 날짜 기능이 도입되었습니다.
      1.date_add(date,interval expr type)adddate(date,interval expr type)两个函数的作用相同,执行日期的加运算:

      【例】使用date_add()和adddate()函数执行日期加操作,SQL语句如下:

      mysql> select date_add('2019-08-18 23:59:59',interval 1 second) as col1,
          -> adddate('2019-08-18 23:59:59',interval 1 second) as col2,
          -> date_add('2019-08-18 23:59:59',interval '1:1' minute_second) as col3;+---------------------+---------------------+---------------------+| col1                | col2                | col3                |+---------------------+---------------------+---------------------+| 2019-08-19 00:00:00 | 2019-08-19 00:00:00 | 2019-08-19 00:01:00 |+---------------------+---------------------+---------------------+1 row in set (0.05 sec)
      로그인 후 복사

      2.date_sub(date,interval expr type)subdate(date,interval expr type)两个函数作用相同,执行日期的减运算:

      【例】使用date_sub和subdate函数执行日期减操作,SQL语句如下:

      mysql> select date_sub('2019-08-18',interval 31 day) as col1,
          -> subdate('2019-08-18',interval 31 day) as col2,
          -> date_sub('2019-08-18 21:15:10',interval '0 0:1:1' day_second) as col3;+------------+------------+---------------------+| col1       | col2       | col3                |+------------+------------+---------------------+| 2019-07-18 | 2019-07-18 | 2019-08-18 21:14:09 |+------------+------------+---------------------+1 row in set (0.00 sec)
      로그인 후 복사

      3.addtime(date,expr)函数将expr值添加到date,并返回修改后的值,date是一个日期或者日期时间表达式,而expr是一个时间表达式。
      【例】使用addtime进行时间加操作,SQL语句如下;

      mysql> select addtime('2019-08-18 21:59:59','1:1:1'),addtime('02:02:02','02:00:00');+----------------------------------------+--------------------------------+| addtime('2019-08-18 21:59:59','1:1:1') | addtime('02:02:02','02:00:00') |+----------------------------------------+--------------------------------+| 2019-08-18 23:01:00                    | 04:02:02                       |+----------------------------------------+--------------------------------+1 row in set (0.05 sec)
      로그인 후 복사

      4.subtime(date,expr)函数将date减去expr值,并返回修改后的值,date是一个日期或者日期时间表达式,expr是一个时间表达式。
      【例】使用subtime()函数执行减操作,SQL语句如下:

      mysql> select subtime('2019-08-18 21:59:59','1:1:1'),subtime('02:02:02','02:00:00');+----------------------------------------+--------------------------------+| subtime('2019-08-18 21:59:59','1:1:1') | subtime('02:02:02','02:00:00') |+----------------------------------------+--------------------------------+| 2019-08-18 20:58:58                    | 00:02:02                       |+----------------------------------------+--------------------------------+1 row in set (0.00 sec)
      로그인 후 복사

      5.datediff(date1,date2)返回起始时间date1和结束时间date2之间的天数,date1和date2为日期或date-and-time表达式。计算中只用到这些值的日期部分。
      【例】使用datediff()函数计算两个日期之间的间隔天数,SQL语句如下;

      mysql> select datediff('2019-08-18 21:59:59','2018-07-18') as col1,
          -> datediff('2019-08-18 22:00:00','2019-08-20') as col2;+------+------+| col1 | col2 |+------+------+|  396 |   -2 |+------+------+1 row in set (0.00 sec)
      로그인 후 복사

      (13)将日期和时间格式化的函数。

      DATE_FORMAT时间日期格式:
      MySQL에 날짜 기능이 도입되었습니다.
      1.date_format()
      【例】使用date_format()函数格式化输出日期和时间值,SQL语句如下:

      mysql> select date_format('2019-08-18 23:33:00','%w %m %y') as col1,
          ->  date_format('2019-08-18 23:33:00','%D %y %a %d %m %b %j') as col2;+---------+---------------------------+| col1    | col2                      |+---------+---------------------------+| 0 08 19 | 18th 19 Sun 18 08 Aug 230 |+---------+---------------------------+1 row in set (0.05 sec)
      로그인 후 복사

      2.time_format()
      【例】使用time_format(time,format)函数格式化输入时间值,SQL语句如下:

      mysql> select time_format('23:39:30','%H %k %h %I %l');+------------------------------------------+| time_format('23:39:30','%H %k %h %I %l') |+------------------------------------------+| 23 23 11 11 11                           |+------------------------------------------+1 row in set (0.00 sec)
      로그인 후 복사

      3.get_format()

      get_format返回的格式字符串:
      MySQL에 날짜 기능이 도입되었습니다.
      【例】使用get_format()函数显示不同格式化类型下的格式字符串,SQL语句如下:

      mysql> select get_format(date,'eur'),get_format(date,'usa');+------------------------+------------------------+| get_format(date,'eur') | get_format(date,'usa') |+------------------------+------------------------+| %d.%m.%Y               | %m.%d.%Y               |+------------------------+------------------------+1 row in set (0.05 sec)
      로그인 후 복사

      【例】在date_format()函数中,使用get_format函数返回的显示格式字符串来显示指定的日期值,SQL语句如下:

      mysql> select date_format('2019-08-19 23:41:30',get_format(date,'usa'));+-----------------------------------------------------------+| date_format('2019-08-19 23:41:30',get_format(date,'usa')) |+-----------------------------------------------------------+| 08.19.2019                                                |+-----------------------------------------------------------+1 row in set (0.00 sec)
      로그인 후 복사

      相关免费学习推荐:mysql数据库(视频)

      위 내용은 MySQL에 날짜 기능이 도입되었습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

      관련 라벨:
      원천:csdn.net
      본 웹사이트의 성명
      본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
      인기 튜토리얼
      더>
      최신 다운로드
      더>
      웹 효과
      웹사이트 소스 코드
      웹사이트 자료
      프론트엔드 템플릿