【MySQL】date型とtime型に分けられたカラムを結合する方法
構文
DATE_ADD(date,INTERVAL expr unit)
SQL文(サンプル)
SELECT
date_add(CAST([TRANSACTIONDATE] AS DATETIME), INTERVAL [TRANSACTIONTIME] HOUR_SECOND)
FROM table;
手順(考え方)
1 date型で定義されたカラムをdatetime型に変換する (2018-01-11 -> 2018-01-11 00:00:00)
1 datetime型に変換したカラム値に、time型のカラムの値を加算する (date_add関数)
unit 値ごとに要求される形式の expr 引数
※ expr
= 文字列 unit
= 式を解釈する際の単位を示すキーワード
unit値 | 要求される expr 書式 |
---|---|
MICROSECOND | MICROSECONDS |
SECOND | SECONDS |
MINUTE | MINUTES |
HOUR | HOURS |
DAY | DAYS |
WEEK | WEEKS |
MONTH | MONTHS |
QUARTER | QUARTERS |
YEAR | YEARS |
SECOND_MICROSECOND | 'SECONDS.MICROSECONDS' |
MINUTE_MICROSECOND | 'MINUTES:SECONDS.MICROSECONDS' |
MINUTE_SECOND | 'MINUTES:SECONDS' |
HOUR_MICROSECOND | 'HOURS:MINUTES:SECONDS.MICROSECONDS' |
HOUR_SECOND | 'HOURS:MINUTES:SECONDS' |
HOUR_MINUTE | 'HOURS:MINUTES' |
DAY_MICROSECOND | 'DAYS HOURS:MINUTES:SECONDS.MICROSECONDS' |
DAY_SECOND | 'DAYS HOURS:MINUTES:SECONDS' |
DAY_MINUTE | 'DAYS HOURS:MINUTES' |
DAY_HOUR | 'DAYS HOURS' |
YEAR_MONTH | 'YEARS-MONTHS' |