【发布时间】:2014-04-14 19:43:18
【问题描述】:
我有一个模型,它包含一个版本号,由于历史原因,它被存储为一个文本字段,比如x.y.z。
class Product(models.Model):
version = TextField()
我想在数据库上执行请求说,获取所有主要版本号高于 5 的产品。或者获取所有次要版本号低于 6 的产品。
我对 SQL 能力不太熟悉。我可以用 Django 查询集表达这样的事情吗?或者如果 Django 本身不支持它,可能使用纯 SQL?
类似:
Product.objects.filter(version__some_expression_gt=5)
这可能吗?
我知道显而易见的解决方案是将 version 字段拆分为对应的数字字段,但遗憾的是,由于愚蠢的原因,这不是我的选择。
【问题讨论】:
标签: python sql django django-queryset