This question has been flagged
1 Reply
7478 Views

I have a character field named employee's id. In which we enter the employee id's like 102,103,1021,..,because it is a character field it shows like 102,1021,103,.. But i want to display like 102,103,1021,... How can i sort the charcter field.?

Avatar
Discard
Best Answer

The below SQL to Sort character field as int,

select *  from table_name order by cast(employees_id as int) asc

But in python the same code _order = "cast(employees_id as int) asc"  is not support.

Solution to override _generate_order_by method in python,

def _generate_order_by(self, order_spec, query):
        my_order = "cast(employees_id as int) asc"            
        if order_spec:
            return super(class_name, self)._generate_order_by(order_spec, query) + ", " + my_order
        return " order by " + my_order

Refer the link for more details.

 

Avatar
Discard

Can we update it in xml code?

yes but what about the senario when i have a char like

"INV/01,INV/02"

at this time SQL throw an error how can we overcome?