0
我有MySQL的記錄數據量巨大,必須tranformed這樣的:MySQL的 - 提取日期時間和轉換爲矩陣映射
我的問題是,如何提取日期時間值(月,周,小時)並將其插入到具有二進制值(0或1)的精確列中,如上圖所示。
問題解決了,我只是想出的最簡單的方法,這裏的例子:
UPDATE TABLE
SET h1 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '1' THEN 1
ELSE '0'
END
, h2 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '2' THEN '1'
ELSE '0'
END
, h3 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '3' THEN '1'
ELSE '0'
END
, h4 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '4' THEN '1'
ELSE '0'
END
, h5 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '5' THEN '1'
ELSE '0'
END
, h6 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '6' THEN '1'
ELSE '0'
END
, h7 = CASE WHEN (SELECT DAYOFWEEK (trx_datetime)) = '7' THEN '1'
ELSE '0'
END
;
如何格式化當前表格?另外,你會發現這個很有用:https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html –
由於某種原因,它只是從具有大記錄的星型模式中反規格化表格我需要提取trx日期時間值並插入到確切的列中。例如: 如果datetime值是2015/10/08 17:31 那麼插入列H17 = 1 ELSE column = 0。 通常情況下,我提取日期時間值與此: SELECT EXTRACT(月/周/小時從Datetime_Column 或者 選擇月/周/小時(Datetime_Column)FROM表 是否與CASE插入日期時間提取值有道/中頻成多個列? – DziGear