當前我正在爲我正在創建的站點構建數據庫。但是,我遇到了一個問題。我想記錄用戶每天登錄的次數,然後能夠在大量時間段(例如8個月,一年,兩年等)中跟蹤該信息。數據庫設計/結構 - 隨着時間的推移收集數據
The我現在唯一能想到的方法就是每年的每一天都有一個專欄/每天自動創建一個專欄。然而,這個想法對我來說似乎很愚蠢。我確信必須有更好的方法來做到這一點,我只是想不到一個。
有什麼建議嗎?
感謝, 羅布
當前我正在爲我正在創建的站點構建數據庫。但是,我遇到了一個問題。我想記錄用戶每天登錄的次數,然後能夠在大量時間段(例如8個月,一年,兩年等)中跟蹤該信息。數據庫設計/結構 - 隨着時間的推移收集數據
The我現在唯一能想到的方法就是每年的每一天都有一個專欄/每天自動創建一個專欄。然而,這個想法對我來說似乎很愚蠢。我確信必須有更好的方法來做到這一點,我只是想不到一個。
有什麼建議嗎?
感謝, 羅布
在創建您存儲的user_id一個單獨的表,日期時間和用戶登錄。
Averytime在用戶登錄,您插入一個新的記錄在此表中。
例子:
CREATE TABLE user_activity (
userid varchar(50),
log_in_datetime datetime
);
啊,我明白了,然後我可以根據日/月/日等解析數據。我不敢相信我沒有想到這一點。謝謝!我現在覺得很蠢:) –
這裏是一個登錄表我用我的網站之一。日期時間可以記錄爲日期時間或時間戳。如果你使用datetime,請確保考慮你的mysql服務器的時區。
有很多東西要跟蹤。然後你可以稍後查詢它。這些列名稱中的每一個都應該用谷歌搜索來自我解釋。
CREATE TABLE `t_login` (
`id_login` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`id_user` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`id_visit` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'fk to t_visit',
`id_org` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`when_attempt` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`uname_attempt` VARCHAR(100) NOT NULL DEFAULT '' COMMENT 'attempted username' COLLATE 'latin1_swedish_ci',
`valid_uname` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'valid username',
`valid_uname_pword` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'valid username and valid password together',
`pw_hash_attempt` BINARY(32) NOT NULL DEFAULT '\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0',
`remote_ip` CHAR(20) NOT NULL DEFAULT '' COLLATE 'latin1_swedish_ci',
`user_agent` VARCHAR(2000) NOT NULL DEFAULT '' COLLATE 'latin1_swedish_ci',
PRIMARY KEY (`id_login`),
INDEX `when_attempt` (`when_attempt`),
INDEX `rempte_ip` (`remote_ip`),
INDEX `valid_user` (`valid_uname`),
INDEX `valid_password` (`valid_uname_pword`),
INDEX `username` (`uname_attempt`),
INDEX `id_ten` (`id_org`),
INDEX `id_user` (`id_user`),
INDEX `id_visit` (`id_visit`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=429;
太棒了!非常感謝你!這也有很大幫助! –
您應該將您的問題更改爲更具體,以便幫助其他用戶。也許「數據庫設計/結構 - 收集用戶登錄數據」會更好地索引 – steampowered