我的博客文章模型如下:
title = db.Column(db.String())
content = db.Column(db.String())
tags = db.Column(ARRAY(db.String))
标签字段可以为空列表。
现在,我想从数据库条目中选择所有具有最佳性能的标记-排除空数组。
因此,假设我有3条记录,其中标签字段的值如下:
结果将是['database','server','connection','security']
实际顺序并不重要。
答案 0 :(得分:0)
distinct()
方法仍然可以在数组列上正常工作。
from sqlalchemy import func
unique_vals = BlogPost.query(func.unnest(BlogPost.tags)).distinct().all()
这与在postgres中运行查询相同:
SELECT DISTINCT unnest(tags) FROM blog_posts