繁体   English   中英

在Django模型中从PostgreSQL获取不同的列

[英]Getting distinct columns from postgresql in django model

我有一个PostgreSQL表,其中的列具有使用Django模型创建的重复数据,例如:

在此处输入图片说明

为了获得不同的列值,我们使用类似于以下的postgre命令:

SELECT distinct degree_code FROM studentapp_deg_course_cat

但是我想使用python获取此数据作为数组。 如何从python中的表的列中获取不同的对象?

在django中,查询模型时可以使用distinct()方法。

所以像这样

models.YourModel.objects.order_by('degree_code').distinct('degree_code') 

当您使用PostgreSQL时,请注意docs指出的状态

仅在PostgreSQL上,您可以传递位置参数(* fields)以指定DISTINCT应该应用的字段名称。 这将转换为SELECT DISTINCT ON SQL查询。 这是区别。 对于正常的distinct()调用,数据库在确定哪些行不同时会比较每行中的每个字段。 对于具有指定字段名称的distinct()调用,数据库将仅比较指定的字段名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM