type
status
date
slug
summary
tags
category
icon
password

說明

當 partition 使用 TO_DAYS 函數來做分區的時候,在 select 時的分區修剪時不會排除最小的 partition,如下範例:
原因是因為 TO_DAYS() 會為無效的日期返回 NULL 結果,因此還需要掃描包含所有 NULL 值的第一個分區。
該問題早在 MySQL 5.1 版本就有人提出,但官方回覆其不是 BUG 也沒有要改善,而是直接關閉這個 BUG 回覆,因此不推薦使用 TO_DAYS 進行 partition 分區,真的要用建議可以讓第一個 partition 不包含任何資料,這樣就算掃描了第一個分區也不影響效能。

參考