Django,查询到过滤器而不是迭代
所以我有一个拍卖数据库(WoW),我每小时更新一次表。它看起来是这样的:Django,查询到过滤器而不是迭代,django,django-queryset,Django,Django Queryset,所以我有一个拍卖数据库(WoW),我每小时更新一次表。它看起来是这样的: class Auction(models.Model): auction_id = models.IntegerField() item_id = models.IntegerField() owner = models.CharField() buyout = models.IntegerField() new_auctions = [ { 'auction_id' : <
class Auction(models.Model):
auction_id = models.IntegerField()
item_id = models.IntegerField()
owner = models.CharField()
buyout = models.IntegerField()
new_auctions = [
{ 'auction_id' : <int>, 'item_id' : <int>,
'owner' : <string> , 'buyout' : <int>
},
# more auctions
]
我得到的数据以字典列表的形式显示,如下所示:
class Auction(models.Model):
auction_id = models.IntegerField()
item_id = models.IntegerField()
owner = models.CharField()
buyout = models.IntegerField()
new_auctions = [
{ 'auction_id' : <int>, 'item_id' : <int>,
'owner' : <string> , 'buyout' : <int>
},
# more auctions
]
所以现在我想我可以在dead_拍卖中重复每一次拍卖,看看在新的_拍卖中是否有同一个所有者以更低的价格拍卖同一件物品
我觉得这很不雅观,而且可能效率低下,因为
- 刚刚完成了一门算法课程,“这是O(n²),和冒泡排序一样糟糕!”
- 一位朋友告诉我“你永远不应该在数据库上迭代,只应该进行查询”
- 我对Django(/databases)还不够精通,还不知道是否有一个智能查询可以替代它