目前,我有列的MySQL表看起來是這樣的:mySQL有效位 - 替代?
run_date DATE
name VARCHAR(10)
load INTEGER
sys_time TIME
rec_time TIME
valid TINYINT
列valid
本質上是一個有效位,1表示此行是這樣做的最新值(run_date,名)對,如果不是0則爲0。爲了使插入更簡單,我編寫了一個存儲過程,首先運行一個UPDATE table_name SET valid = 0 WHERE run_date = X AND name = Y
命令,然後插入新行。
表讀取的方式是我通常只使用valid = 1
行,但我不能丟棄無效行。顯然,這個模式也沒有主鍵。
有沒有更好的方法來構造這個數據或有效位,以便我可以加快插入和搜索?一堆不同順序的列索引變大。
添加一個主鍵字段的開始!這將大大提高搜索性能。 –