在django中使用ORDER BY FIELD(name,'Apple','Banana') [英] Use ORDER BY FIELD(name, 'Apple', 'Banana') in django
问题描述
所以在MySQL中,它看起来像:
我想在django ORM中使用。我怎样才能做到这一点。我可以使用 order_by()
来做到这一点。或者使用 extra()
不这样工作:
Fruit.objects.all()。extra(order_by =FIELD(name,'Banana','Apple','Pear','Orange'))
一个Google-FU发现: http://davedash.com/2010/02/11/retrieving-elements-in-a- specific-order-in-django-and-mysql /
Fruit.objects.extra(
select = {'manual':FIELD(name,'Banana','Apple','Pear','Orange')},
order_by = ['manual']
)
I would like to use ORDER BY FIELD() (MySQL) in Django. Does Django support that?
So in MySQL it looks like:
SELECT * FROM fruit
ORDER BY FIELD(name, 'Banana', 'Apple', 'Pear', 'Orange'), variety;
I would like use this in django ORM. How can i do that. Can i do that using order_by()
. Or using extra()
somehow.
Does not work like this:
Fruit.objects.all().extra(order_by="FIELD(name, 'Banana', 'Apple', 'Pear', 'Orange')")
A little Google-FU found this: http://davedash.com/2010/02/11/retrieving-elements-in-a-specific-order-in-django-and-mysql/
Fruit.objects.extra(
select={'manual': "FIELD(name, 'Banana', 'Apple', 'Pear', 'Orange')"},
order_by=['manual']
)
这篇关于在django中使用ORDER BY FIELD(name,'Apple','Banana')的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!