Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1 Balas
3068 Tampilan

I created custom field 'A' for sale.order table. field 'A' is defined as String in db. A values are numbers most of the time (eg. 50011) and sometimes default strings(eg. 'default'). I want to get top 10 A field numbers in a query. I wrote:

`recent_orders = request.env['sale.order'].sudo().search(
[('...')],
limit=10,
order='A desc')`
but it compares A data as strings. How can I make it compare them as integers and ignore string fields.
Avatar
Buang
Jawaban Terbai

If default string is always 'default', you could try writing SQL query with cast function which converts value to your specified type:

result = self._cr.execute('select * from sale_order where A != 'default' order by cast(A as integer) desc limit 10') 
Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
1
Des 16
8588
1
Okt 20
3452
1
Sep 20
4452
1
Des 19
6979
0
Mar 15
4519