前言:公司積分**增加簽到功能,如下:
每次簽到+1分,連續簽到7天,第7天多+1分。第8天+1,連續簽到7天後,再多+1分。
若每個使用者每天簽到資料直接累計,資料庫資料將成倍增加,故每個使用者只維持一條簽到資料。判斷是否是連續簽到的話,根據continue_sign,連續簽到最大值為6,第七天重置為0
根據userid查詢,
select * from t_sign where user_id='1111';
若使用者第一次簽到,直接插入資料,
insert into t_sign(id,user_id,mark,create_time,update_time,continue_sign,count) values ('1','111','生日快樂','2018-09-10 10:20:41','2018-09-10 10:20:41',1,1);
若非第一次簽到,更新簽到時間(update_time)
update t_sign set update_time='2018-09-10 10:20:41' where id='111';
若不是第一次簽到,還需判斷簽到時間是否間隔大於一天
若是連續簽到,判斷是否為連續七天簽到,且將連續簽到置為0
若不是連續簽到,更新簽到時間,將連續簽到+1
public class sign implements serializable
Oracle資料庫關閉歸檔功能及刪除歸檔日誌方法
注意 資料庫歸檔功能的開啟和關閉需重啟例項。一 查詢資料 庫歸檔是否開啟 返回值是archivelog則開啟了歸檔模式 noarchivelog是未開啟。conn sys sys orcl as sysdba select log mode from v database 二 歸檔日誌日 空間使用 ...
搜尋功能實現資料庫like
like用來匹配一部分的,任何字元出現任何位置區分大小寫。select from table where col like a 檢索以a結尾的內容 select from table where col like a 檢索包含a的內容 select from table where col like...
MySQL資料庫表分割槽功能詳解
1 什麼是表分割槽?mysql資料庫中的資料是以檔案的形勢存在磁碟上的,預設放在 mysql data下面 可以通過my.cnf中的datadir來檢視 一張表主要對應著三個檔案,乙個是frm存放表結構的,乙個是myd存放表資料的,乙個是myi存表索引的。如果一張表的資料量太大的話,那麼myd,my...