我想在MySQL数据仓库中处理日期维度。(我是数据仓库领域的新手)
我通过谷歌搜索发现了很多表结构(大部分为)日期维度,其中主键是一个简单的UNSIGNED INTEGER
。
既然在MySQL中,DATE
字段仅占用3个字节,而INTEGER
需要4个字节,那么为什么不使用DATE
字段作为主键呢?
例如:
CREATE TABLE dimDate
id INTEGER UNSIGNED NOT NULL PRIMARY AUTOI_NCREMENT,
date DATE NOT NULL,
dayOfWeek
...
VS
CREATE TABLE dimDate
date DATE NOT NULL PRIMARY,
dayOfWeek
...