簡體   English   中英

RDBMS B +樹索引如何用於選擇查詢

[英]How RDBMS B+ Tree Indexing works for Select Query

我了解到B +樹用於實現RDBMS,現在我想在C / C ++中實現RDBMS,我已經了解了B +樹,還看到了SQLite。

我對搜索查詢在數據庫上的工作方式有概念上的疑問,我們將(鍵,值)存儲在B +樹上,現在說我有一張桌子

與列{id,name,phone,address}

我必須用phone ='xyz'搜索記錄,數據庫將如何使用B +樹有效地獲取該記錄。

它是對記錄的完整O(N)搜索還是已優化?

如果您沒有索引, 是完整的ON )搜索
如果您有索引,它將進行優化

平均情況O(logb(n))

最差的演員O(n)

B +樹是一個盲目的樹,它的工作方式更類似於MYSQL中的二進制搜索樹。 它的實現可以變化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM