大家好我想尝试使用CAST在django查询集中订购一个字符串,但我无法实现订单,我需要一只手。
s = Empresas.objects.filter(codigo__startswith="B") \
.extra({'codigo_uint': "CAST(codigo as INTEGER)"}) \
.order_by('-codigo_uint')
for x in s:
print x.codigo
我得到的是:
B-001
B-999
B-1000
B-897
B-010
B-099
B-100
B-500
B-9999
我怎样才能得到正确的订单? 我非常感谢帮助
models.py
class Empresas(models.Model):
nombre = models.CharField(max_length=250)
codigo = models.CharField(max_length=250)