Django,什么是最好的,最快的方式来获取第一个和最后一个元素,Customer.objects.xxxx这样的过滤器,value_list或...
答案 0 :(得分:10)
可能是大多数pythonic方式:
myset = Customer.objects.filter(<something>).order_by(<something>)
first, last = myset[0], myset.reverse()[0]
答案 1 :(得分:4)
什么是最好,最快的方式才能获得第一个和最后一个
让我们看看。
customers = Customer.objects.filter(**conditions)
first = customers.order_by('id')[0]
last = customers.latest('id')
当然如果你可以提出一个SQL查询来执行此操作,它可以使用raw()
方法执行。
query = "<your query to get first and last>"
Customer.objects.raw(query)
答案 2 :(得分:0)
我并不完全熟悉django的内部工作方式,但我认为最快的方法是:
elements = Customer.objects.filter(<something>)
first_element = elements[0]
last_element = elements[-1]