时间:2021-05-22
在你的 Django 应用中,你或许希望根据某字段的值对检索结果排序,比如说,按字母顺序。 那么,使用 order_by() 这个方法就可以搞定了。
>>> Publisher.objects.order_by("name")[<Publisher: Apress>, <Publisher: O'Reilly>]跟以前的 all() 例子差不多,SQL语句里多了指定排序的部分:
SELECT id, name, address, city, state_province, country, websiteFROM books_publisherORDER BY name;我们可以对任意字段进行排序:
>>> Publisher.objects.order_by("address")[<Publisher: O'Reilly>, <Publisher: Apress>]>>> Publisher.objects.order_by("state_province")[<Publisher: Apress>, <Publisher: O'Reilly>]如果需要以多个字段为标准进行排序(第二个字段会在第一个字段的值相同的情况下被使用到),使用多个参数就可以了,如下:
>>> Publisher.objects.order_by("state_province", "address") [<Publisher: Apress>, <Publisher: O'Reilly>]我们还可以指定逆向排序,在前面加一个减号 - 前缀:
>>> Publisher.objects.order_by("-name")[<Publisher: O'Reilly>, <Publisher: Apress>]尽管很灵活,但是每次都要用 order_by() 显得有点啰嗦。 大多数时间你通常只会对某些 字段进行排序。 在这种情况下,Django让你可以指定模型的缺省排序方式:
class Publisher(models.Model): name = models.CharField(max_length=30) address = models.CharField(max_length=50) city = models.CharField(max_length=60) state_province = models.CharField(max_length=30) country = models.CharField(max_length=50) website = models.URLField() def __unicode__(self): return self.name **class Meta:** **ordering = ['name']**现在,让我们来接触一个新的概念。 class Meta,内嵌于 Publisher 这个类的定义中(如果 class Publisher 是顶格的,那么 class Meta 在它之下要缩进4个空格--按 Python 的传统 )。你可以在任意一个 模型 类中使用 Meta 类,来设置一些与特定模型相关的选项。 在 附录B 中有 Meta 中所有可选项的完整参考,现在,我们关注 ordering 这个选项就够了。 如果你设置了这个选项,那么除非你检索时特意额外地使用了 order_by(),否则,当你使用 Django 的数据库 API 去检索时,Publisher对象的相关返回值默认地都会按 name 字段排序。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
JavaScript中的Array对象有自己的排序方法sort(),对数组中的数据项进行排序,但是有时候排序结果不尽如人意,比如vararr=[12,1,2,2
有些时候,在使用SELECT语句进行数据查询后,想先看众多数据中最新的信息或某列的最大值时,就可以使用ORDERBY子句对生成的结果集进行排序。ORDERB
本文实例讲述了MySQL查询排序与查询聚合函数用法。分享给大家供大家参考,具体如下:排序为了方便查看数据,可以对数据进行排序语法:select*from表名or
Django学习笔记-学生管理系统(Django实现)笔记中仅实现了对数据的全部查询。下面实现新增、删除、修改,代码如下。下面的代码没有对输入框内容进行限制,如
EXCEL表格主要是针对数据的,对于数据排序是避不可免的,排序是EXCEL里面的一些基本操作,下面小编就为大家介绍在excel表格中怎么对数据进行排序方法,以前