擅长:python、mysql、java
<p>我有一个CharField和一个name字段,例如,它有混合(int+string)值。”a1,“f65”,“P”,“55”e.t.c。。在</p>
<p>通过使用sql cast(用postgres&mysql测试)解决了这个问题,
首先,我尝试按casted整数值排序,然后按name字段的原始值排序。在</p>
<pre><code>parking_slots = ParkingSlot.objects.all().extra(
select={'num_from_name': 'CAST(name AS INTEGER)'}
).order_by('num_from_name', 'name')
</code></pre>
<p>这样,不管怎样,正确的排序对我来说都是有效的。在</p>