我有一個users
表,其中有username
列,並且此列中有B樹索引。當我檢查以下查詢的解釋計劃時:select username from users where username like 'A%'
我可以看到Oracle對索引執行索引範圍掃描以提取所需信息,這是絕對可以的,但在索引範圍掃描過程中,Oracle使用以下謂詞:access(username like 'A%')
filter(username like 'A%')
。Oracle中的相同過濾器和訪問謂詞解釋計劃
爲什麼Oracle使用它們兩個?他們完全一樣,所以我認爲其中一個就足夠了。