source

MySql, 날짜 및 시간 열을 타임스탬프로 결합

goodcode 2022. 12. 25. 11:17
반응형

MySql, 날짜 및 시간 열을 타임스탬프로 결합

이것은 비교적 간단하게 할 수 있다고 생각합니다만, 구문은 잘 모르겠습니다.타임스탬프 열에 결합할 날짜 및 시간 열이 있습니다.선택 항목을 사용하여 어떻게 질의해야 합니까?

또는 내장된 기능을 사용할 수도 있습니다.

그러면 Orders 테이블에서 이런 말을...

SELECT OrderNumber, TIMESTAMP(date,time) as OrderTS, SalesPersonID
FROM Orders

Mysql에 datetime('2017-10-26', '09:28:00')과 같은 datetime 생성자가 없는 것 같습니다.따라서 컴포넌트 부분을 문자열로 취급하여 문자열 연결 함수를 사용해야 합니다(메모 mysql에는 문자열 연결을 위한 || 연산자가 없습니다).datetime 유형을 원하는 경우 캐스팅해야 합니다.

concat(datefield,' ',timefield) as date

select cast(concat('2017-10-26', ' ', '09:28:00') as datetime) as dt;

빌트인 기능을 사용할 수 있다면 그냥 사용하세요.여기서는 타임스탬프 간의 레코드를 찾는 예를 보여 줍니다.

SELECT `id` FROM `ar_time` WHERE TIMESTAMP(`cdate`,`ctime`) BETWEEN fromTimeStamp AND nowTimeStamp;
SELECT * FROM tablename WHERE TIMESTAMP(datecol, timecol) > '2015-01-01 12:00:00';

24시간 동안

TIMESTAMP(Date, STR_TO_DATE(Time, '%h:%i %p'))

O.P.가 말했다SELECT타임스탬프 컬럼을 추가할 경우:

ALTER TABLE `t` ADD COLUMN `stamp` TIMESTAMP;
UPDATE `t` SET `stamp` = STR_TO_DATE(CONCAT(`Date`, ' ', `Time`), '%m/%d/%Y %H:%i:%s');

포맷 문자열을 취향에 맞게 조정합니다.

concat('2021-12-31', ' ', '07:00:00')

INSERT 절차로 작동했습니다.

언급URL : https://stackoverflow.com/questions/4125931/mysql-combining-date-and-time-column-into-a-time-stamp

반응형