3
我用下面的查詢從我的數據庫佰檢索最近從數據庫10個項目在Django
itemobjects = Items.objects.all()[:10]
獲取10個項目有沒有更好的方式來做到這一點?因爲當我的數據庫中的項目數量增加時,上述查詢非常緩慢,大約需要1-2秒
我用下面的查詢從我的數據庫佰檢索最近從數據庫10個項目在Django
itemobjects = Items.objects.all()[:10]
獲取10個項目有沒有更好的方式來做到這一點?因爲當我的數據庫中的項目數量增加時,上述查詢非常緩慢,大約需要1-2秒
即使在大型表格上,這也不應該花費很長時間。您是否在模型的Meta
類中定義了默認排序?也許它會在默認情況下在非索引字段中進行訂購,這可能是您看到的放緩的原因。
無論如何,以獲得最新的條目,按主鍵命令他們(這是保證被編入索引):
itemobjects = Items.objects.all().order_by('-pk')[:10]
/編輯:只是一個提示:這是一個慣例給模型類單數名稱,例如Item
而不是Items
。
是基於時間的iam排序現在 – shanks
嘗試設置該字段的索引,看看它是否有幫助 –