날짜 및 시간 함수는 수식에서 날짜 값과 시간 값을 분석하고 처리하는 데 사용되는 함수를 말합니다. 이번 글에서는 MYSQL 날짜 함수에 대한 요약을 공유하겠습니다.
각 유형의 값 범위에 대한 설명과 날짜 및 시간 값을 지정하는 데 유효한 형식은 7.3.6 날짜 및 시간 유형을 참조하세요.
다음은 날짜 함수를 사용한 예입니다. 다음 쿼리는 date_col 값이 지난 30일 이내에 있는 모든 레코드를 선택합니다.
mysql> SELECT Something FROM table
WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) mysql> select DAYOFWEEK('1998-02-03');
-> 3
WEEKDAY(날짜)
날짜의 주 인덱스를 반환합니다(0=월요일, 1=화요일, ...6=일요일).
mysql> WEEKDAY('1997-10-04 22:23:00')
-> 5
mysql> WEEKDAY('1997-11-05')
DAYOFMONTH(날짜) )
날짜가 속한 달의 일자를 1~31 범위에서 반환합니다.
mysql> select DAYOFMONTH('1998-02-03');
-> 3
DAYOFYEAR(date)
날짜의 일수를 1~366 범위에서 반환합니다.
mysql> select DAYOFYEAR('1998-02-03');
-> 34
MONTH(날짜)
1부터 12까지의 월을 반환합니다.
mysql> select MONTH('1998-02-03');
-> 2
DAYNAME(date)
날짜의 요일을 반환합니다.
mysql> select DAYNAME("1998-02-05")
-> '목요일'
MONTHNAME(date)
날짜의 월 이름을 반환합니다.
mysql> select MONTHNAME("1998-02-05");
-> 'February'
QUARTER(date)
1부터 4까지의 날짜 범위를 반환합니다.
mysql> select QUARTER('98-04-01');
-> 2
WEEK(date)
WEEK(date,first)
일요일이 첫날인 경우 단일 매개변수는 0~52 범위의 날짜의 주 수를 반환합니다. 2-인수 형식 WEEK()를 사용하면 주가 일요일 또는 월요일에 시작하는지 지정할 수 있습니다. 두 번째 인수가 0이면 주가 일요일에 시작되고, 두 번째 인수가 1이면
월요일에 시작됩니다.
mysql> WEEK('1998-02-20');
mysql> WEEK('1998-02-20',0) 선택
mysql> -02-20',1);
-> 8
YEAR(날짜)
1000부터 9999까지의 날짜 연도를 반환합니다.
mysql> select YEAR('98-02-03');
-> 1998
HOUR(time)
0에서 23까지의 시간을 반환합니다.
mysql> select HOUR('10:05:03');
-> 10
MINUTE(time)
0에서 59까지의 시간을 반환합니다.
mysql> select MINUTE('98-02-03 10:05:03')
-> 5
SECOND(time)
초 단위로 0에서 59까지의 시간을 반환합니다.
mysql> SECOND('10:05:03');
-> 3
PERIOD_ADD(P,N)
단계 P에 N개월을 추가합니다(YYMM 또는 YYYYMM 형식). YYYYMM 형식으로 값을 반환합니다. 위상 매개변수 P는 날짜 값이 아닙니다.
mysql> select PERIOD_ADD(9801,2);
-> 199803
PERIOD_DIFF(P1,P2)
기간 P1과 P2 사이의 개월 수를 YYMM 또는 YYYYMM 형식으로 반환합니다. 기간 매개변수 P1 및 P2는 날짜 값이 아닙니다.
mysql> select PERIOD_DIFF(9802,199703);
-> 11
DATE_ADD(date,INTERVAL expr type)
DATE_SUB(date,INTERVAL expr type)
ADDDATE(date,INTERVAL expr type) )
SUBDATE ( date,INTERVAL expr 유형)
이 함수는 날짜 작업을 수행합니다. MySQL 3.22부터는 새로운 기능입니다. ADDDATE() 및 SUBDATE()는 DATE_ADD() 및 DATE_SUB()의 동의어입니다.
MySQL 3.23에서는 DATE_ADD() 및 DATE_SUB() 대신 + 및 -를 사용할 수 있습니다. (예 참조) 날짜는 시작 날짜를 지정하는
DATETIME 또는 DATE 값이고, expr은 시작 날짜에 더하거나 뺄 간격 값을 지정하는 표현식이며, expr은
a "로 끝날 수 있는 문자열입니다. - ”는 음의 간격을 나타내기 시작합니다. type은 표현식이 해석되는 방식을 지정하는 키워드입니다. EXTRACT(type FROM date) 함수는 날짜
에서 "type" 간격을 반환합니다. 다음 표는 유형 및 expr 매개변수가 어떻게 관련되어 있는지 보여줍니다. 예상되는 expr 형식을 의미하는 유형 값
SECOND 초 SECONDS
MINUTE 분 MINUTES
HOUR 시간 HOURS
DAY 일 DAYS
MONTH 개월 MONTHS
YEAR 년 YEARS
MINUTE_SECOND 분 및 초 "MINUTES " :SECONDS"
HOUR_MINUTE 시, 분 "HOURS:MINUTES"
DAY_HOUR 일 및 시 "DAYS HOURS"
YEAR_MONTH 연도 및 월 "YEARS-MONTHS"
HOUR_SECOND 시, 분, "HOURS:MINUTES:SECONDS"
DAY_MINUTE 일, 시, 분 "DAYS HOURS:MINUTES"
DAY_SECOND 일, 시, 분, 초 "DAYS HOURS:MINUTES:SECONDS"
MySQL에서는 expr 형식의 구두점 구분 기호를 허용합니다. 권장 구분 기호가 표시됨을 나타냅니다. 날짜 매개변수가 DATE 값이고 계산이
인 경우YEAR, MONTH 및 DAY 구성 요소를 포함하며(즉, 시간 구성 요소 없음) 결과는 DATE 값입니다. 그렇지 않으면 결과는 DATETIME 값입니다.
mysql> SELECT "1997-12-31 23:59:59" + "1997-12-31"
-> 1998-01-01
mysql> - 간격 1초;
-> 1997-12-31 23:59:59
mysql> SELECT DATE_ADD("1997- 12-31 23:59:59",
-> 1998- 01-01 00:00:00
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",
간격 1일)
-> SELECT DATE_ADD("1997-12-31 23:59:59",
INTERVAL "1:1" MINUTE_SECOND)
- > 1998-01-01 00:01:00
mysql> -01 00:00:00",
INTERVAL "1 1:1:1" DAY_SECOND);
-> 1997- 12-30 22:58:59
mysql> SELECT DATE_ADD("1998-01-01 00: 00:00",
INTERVAL "-1 10" DAY_HOUR);
-> 1997-12-30 14:00: 00
mysql> SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY);
- > 1997-12-02
mysql> SELECT EXTRACT(연도 "1999-07-02")
-> 1999
mysql> SELECT EXTRACT(연도_월 "1999-07-02 01:02:03") ;
-> 199907
mysql> SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03")
-> 20102
간격 부분 제외 type 키워드로 예상됨), MySQL은 간격 값의 가장 왼쪽 부분을 생략했다고 가정합니다. 예를 들어
DAY_SECOND 유형을 지정하는 경우 expr 값에는 일, 시, 분, 초 구성요소가 있어야 합니다. "1:10"과 같은 값을 지정하면
MySQL은 날짜와 시간 부분이 누락되고 값이 분과 초를 나타내는 것으로 가정합니다. 즉, "1:10" DAY_SECOND는 "1:10" MINUTE_SECOND
과 동일한 방식으로 해석되는데, 이는 MySQL이 TIME 값을 시간이 아닌 경과 시간을 표현하기 위해 해석하는 방식과 모호합니다. 낮. 정말 잘못된 날짜를 사용하면
결과는 NULL입니다. MONTH, YEAR_MONTH 또는 YEAR를 증가시키고 결과 날짜가 새 달의 최대 일 수보다 큰 경우 해당 일은 새 달의 최대 일 수로 조정됩니다.
mysql> select DATE_ADD('1998-01-30', Interval 1month)
-> 1998-02-28
이전 예에서는 INTERVAL이라는 단어와 type 키워드가 대소문자를 구분하지 않습니다. .
TO_DAYS(날짜)
날짜가 주어지면 일 수(0년부터의 일 수)를 반환합니다. mysql & gt; )가 값 앞에 나타납니다.
FROM_DAYS(N)
일수 N이 주어지면 DATE 값을 반환합니다.
mysql> select FROM_DAYS(729669);
-> '1997-10-07'
TO_DAYS()는 그레고리력(1582) 이전의 값과 함께 사용할 수 없습니다.
DATE_FORMAT(date,format)
형식 문자열에 따라 날짜 값의 형식을 지정합니다. 형식 문자열에는 다음 수정자를 사용할 수 있습니다. %M 월 이름(1월...12월)
%W 주 이름(일요일...토요일)
%D 영어 접두어가 붙은 날짜(1st, 2nd, 3rd) , 등 )
%Y년, 숫자, 4자리
%y년, 숫자, 2자리
%a 약식 요일(일...토)
%d 월의 일수, 숫자(00) ...31)
%e 월의 일수, 숫자(0...31)
%m 월, 숫자(01...12)
%c 월, 숫자(1...12)
%b 약식 월 이름(Jan... Dec)
%j 1년의 일수(001…366)
%H시간(00…23)
%k시간(0…23)
%h시간(01) …12)
%I 시간(01…12)
%l 시간(1…12)
%i 분, 숫자(00…59)
%r 시간, 12시간(hh:mm:ss [AP ]M)
%T 시간 ,24시간(hh:mm:ss)
%S초(00…59)
%s초(00…59)
%p AM 또는 PM
%w 일 수 한 주 (0=일요일… 6=토요일)
%U week(0…52), 여기서 일요일은 주의 첫 번째 날입니다.
%u week(0…52), 여기서 월요일은 주의 첫 번째 날입니다. the week
%% 텍스트 “%”.
다른 모든 문자는 해석 없이 결과에 복사됩니다.
mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y')
-> '1997년 10월 토요일'
mysql> 04 22:23:00', '%H:%i:%s');
-> '22:23:00'
mysql> DATE_FORMAT('1997-10-04 22:23:00',
'%D %y %a %d %m %b %j')
-> '277년 10월 4일 4일'
mysql> select DATE_FORMAT('1997-10-04 22:23:00' ,
'%H %k %I %r %T %S %w')
-> '22 22 10 10:23:00 PM 22:23:00 00 6'
MySQL3.23에서는 수정자 앞에 % 형식이 필요합니다. 이전 버전의 MySQL에서는 %가 선택 사항이었습니다.
TIME_FORMAT(time,format)
위의 DATE_FORMAT() 함수처럼 사용되지만 형식 문자열에는 시, 분, 초를 처리하는 형식 수정자만 포함될 수 있습니다.
다른 수정자는 NULL 값 또는 0을 생성합니다.
CURDATE()
CURRENT_DATE
함수가 문자열 또는 숫자 컨텍스트에서 사용되는지 여부에 따라 'YYYY-MM-DD' 또는 YYYYMMDD 형식으로 오늘 날짜 값을 반환합니다.
mysql> CURDATE();
-> '1997-12-15'
mysql> CURDATE() + 0;
CURTIME()
CURRENT_TIME
:MM:SS ' 또는 HHMMSS 형식을 사용하여 함수가 문자열 또는 숫자 컨텍스트에서 사용되는지 여부에 따라 현재 시간 값을 반환합니다.
mysql> 선택 CURTIME();
mysql> CURTIME() + 0;
NOW()
CU RR ENT_TIMESTAMP
와 함께 ' 함수가 문자열 또는 숫자 컨텍스트에서 사용되는지 여부에 따라 YYYY-MM-DD HH:MM:SS' 또는 YYYYMMDDHHMMSS 형식으로 현재 날짜와 시간을 반환합니다.
mysql> NOW();
-> NOW() + 0 선택
UNIX_TIMESTAMP()
UNIX_TIMESTAMP(날짜)
인수 없이 호출하면 Unix 타임스탬프('1970-01-01 00:00:00' GMT 이후의 초 수)를 반환합니다. UNIX_TIMESTAMP()가 날짜 인수와 함께 호출되면 '1970-01-01 00:00:00' GMT 이후의 초 수를 반환합니다. 날짜는 DATE 문자열, DATETIME 문자열, TIMESTAMP 또는 YYMMDD 또는 YYYYMMDD 형식의 현지 시간 숫자일 수 있습니다.
mysql> select UNIX_TIMESTAMP();
-> 882226357
mysql> MESTAMP는 TIMESTAMP 열에 사용되며 암시적 "문자열-유닉스-타임스탬프" 변환 없이 직접 허용됩니다.
FROM_UNIXTIME(unix_timestamp)
함수가 문자열
또는 숫자 컨텍스트에서 사용되는지 여부에 따라 unix_timestamp 매개변수가 나타내는 값을 'YYYY-MM-DD HH:MM:SS' 또는 YYYYMMDDHHMMSS 형식으로 반환합니다.
mysql> FROM_UNIXTIME(875996580);
-> '1997-10-04 22:23:00'
mysql> FROM_UNIXTIME(875996580) + 0;
FROM_UNIXTIME(unix_timestamp,형식)
형식 문자열에 따라 형식이 지정된 Unix 타임스탬프를 나타내는 문자열을 반환합니다. 형식에는 DATE_FORMAT() 함수에 나열된 것과 동일한 수정자가 포함될 수 있습니다.
mysql> select FROM_UNIXTIME(UNIX_TIMESTAMP(),
'%Y %D %M %h:%i:%s %x')
-> '1997년 12월 23일 03:43:30 x'
SEC_TO_TIME( 초)
초 매개변수를 시, 분, 초로 변환하여 반환합니다. 값은 함수가 문자열 또는 숫자 컨텍스트에서 사용되는지 여부에 따라 'HH:MM:SS' 또는 HHMMSS 형식으로 지정됩니다. &Mysql & GT; Select sex (2378);
- & gt; '00: 39: 38 '
Mysql & GT; Select sex (2378) + 0; 回 시간 매개변수를 반환하고 초로 변환합니다.
mysql> select TIME_TO_SEC('22:23:00');
-> 80580
mysql> select TIME_TO_SEC('00:39:38')
-> 2378
요약하자면 모든 사람에게 도움이 되기를 바랍니다.
관련 권장 사항:
날짜 함수 및 함수 캡슐화의 유연한 사용
일반적으로 사용되는 mysql 날짜 함수
MYSQL 날짜 함수 모음
위 내용은 MYSQL 날짜 함수 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

저장된 절차는 성능을 향상시키고 복잡한 작업을 단순화하기 위해 MySQL에서 사전 컴파일 된 SQL 문입니다. 1. 성능 향상 : 첫 번째 편집 후 후속 통화를 다시 컴파일 할 필요가 없습니다. 2. 보안 향상 : 권한 제어를 통해 데이터 테이블 액세스를 제한합니다. 3. 복잡한 작업 단순화 : 여러 SQL 문을 결합하여 응용 프로그램 계층 로직을 단순화합니다.

MySQL 쿼리 캐시의 작동 원리는 선택 쿼리 결과를 저장하는 것이며 동일한 쿼리가 다시 실행되면 캐시 된 결과가 직접 반환됩니다. 1) 쿼리 캐시는 데이터베이스 읽기 성능을 향상시키고 해시 값을 통해 캐시 된 결과를 찾습니다. 2) MySQL 구성 파일에서 간단한 구성, query_cache_type 및 query_cache_size를 설정합니다. 3) SQL_NO_CACHE 키워드를 사용하여 특정 쿼리의 캐시를 비활성화하십시오. 4) 고주파 업데이트 환경에서 쿼리 캐시는 성능 병목 현상을 유발할 수 있으며 매개 변수의 모니터링 및 조정을 통해 사용하기 위해 최적화해야합니다.

MySQL이 다양한 프로젝트에서 널리 사용되는 이유에는 다음이 포함됩니다. 1. 고성능 및 확장 성, 여러 스토리지 엔진을 지원합니다. 2. 사용 및 유지 관리, 간단한 구성 및 풍부한 도구; 3. 많은 지역 사회 및 타사 도구 지원을 유치하는 풍부한 생태계; 4. 여러 운영 체제에 적합한 크로스 플랫폼 지원.

MySQL 데이터베이스를 업그레이드하는 단계에는 다음이 포함됩니다. 1. 데이터베이스 백업, 2. 현재 MySQL 서비스 중지, 3. 새 버전의 MySQL 설치, 4. 새 버전의 MySQL 서비스 시작, 5. 데이터베이스 복구. 업그레이드 프로세스 중에 호환성 문제가 필요하며 Perconatoolkit과 같은 고급 도구를 테스트 및 최적화에 사용할 수 있습니다.

MySQL 백업 정책에는 논리 백업, 물리적 백업, 증분 백업, 복제 기반 백업 및 클라우드 백업이 포함됩니다. 1. 논리 백업은 MySQLDump를 사용하여 데이터베이스 구조 및 데이터를 내보내며 소규모 데이터베이스 및 버전 마이그레이션에 적합합니다. 2. 물리적 백업은 데이터 파일을 복사하여 빠르고 포괄적이지만 데이터베이스 일관성이 필요합니다. 3. 증분 백업은 이진 로깅을 사용하여 변경 사항을 기록합니다. 이는 큰 데이터베이스에 적합합니다. 4. 복제 기반 백업은 서버에서 백업하여 생산 시스템에 미치는 영향을 줄입니다. 5. AmazonRDS와 같은 클라우드 백업은 자동화 솔루션을 제공하지만 비용과 제어를 고려해야합니다. 정책을 선택할 때 데이터베이스 크기, 가동 중지 시간 허용 오차, 복구 시간 및 복구 지점 목표를 고려해야합니다.

mysqlclusteringenhancesdatabaserobustness andscalabilitydaturedingdataacrossmultiplenodes.itusesthendbenginefordatareplicationandfaulttolerance, highavailability를 보장합니다

MySQL에서 데이터베이스 스키마 설계 최적화는 다음 단계를 통해 성능을 향상시킬 수 있습니다. 1. 인덱스 최적화 : 공통 쿼리 열에서 인덱스 생성, 쿼리의 오버 헤드 균형 및 업데이트 삽입. 2. 표 구조 최적화 : 정규화 또는 정상화를 통한 데이터 중복성을 줄이고 액세스 효율을 향상시킵니다. 3. 데이터 유형 선택 : 스토리지 공간을 줄이기 위해 Varchar 대신 Int와 같은 적절한 데이터 유형을 사용하십시오. 4. 분할 및 하위 테이블 : 대량 데이터 볼륨의 경우 파티션 및 하위 테이블을 사용하여 데이터를 분산시켜 쿼리 및 유지 보수 효율성을 향상시킵니다.

tooptimizemysqlperformance, followthesesteps : 1) 구현 properIndexingToSpeedUpqueries, 2) useExplaintoAnalyzeanDoptimizeQueryPerformance, 3) AdvertServerConfigUrationSettingstingslikeInnodb_buffer_pool_sizeandmax_connections, 4) uspartOflEtOflEtOflestoI


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

드림위버 CS6
시각적 웹 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.
