如何實現(xiàn)僅對部分數(shù)據(jù)構建索引?
索引會占用比想象中的還要大的空間,有好幾次我向表中添加索引以增加速度,但是對磁盤使用量的快速增長感到震驚。雖然索引是構建在列上,但是并不是每個行記錄都需要在索引里面,這是部分索引partial indexes就提供了一個解決方案。
假設在電子商務應用程序的數(shù)據(jù)庫中有一個很大的orders表,包含應用程序中指定的每種類型的訂單數(shù)據(jù),甚至包括那些未完成的訂單。此時應用程序有一個搜索功能,可以根據(jù)orders表中的一列進行過濾,但是那些未完成的訂單不需要在這個索引中。
創(chuàng)建部分索引時使用WHERE子句,使索引只包含符合條件的行。下面是一個簡單示例:
CREATE INDEXorders_completed_user_id ON orders (user_id) WHERE completed IS TRUE;
誠然,在這樣的場景中保持的數(shù)據(jù)量將會很少(user_id可能只是一個整數(shù)),但是對于文本列或多列索引,最終節(jié)省的磁盤空間將會很大。

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
推薦專題
- 1 AI 眼鏡讓百萬 APP「集體失業(yè)」?
- 2 大廠紛紛入局,百度、阿里、字節(jié)搶奪Agent話語權
- 3 深度報告|中國AI產(chǎn)業(yè)正在崛起成全球力量,市場潛力和關鍵挑戰(zhàn)有哪些?
- 4 上海跑出80億超級獨角獸:獲上市公司戰(zhàn)投,干人形機器人
- 5 國家數(shù)據(jù)局局長劉烈宏調(diào)研格創(chuàng)東智
- 6 一文看懂視覺語言動作模型(VLA)及其應用
- 7 下一代入口之戰(zhàn):大廠為何紛紛押注智能體?
- 8 百億AI芯片訂單,瘋狂傾銷中東?
- 9 Robotaxi新消息密集釋放,量產(chǎn)元年誰在領跑?
- 10 格斗大賽出圈!人形機器人致命短板曝光:頭腦過于簡單