Order by enum in mysql
Consider you have the following enum field in a mysql table.
my_enum_field enum('default','c', 'a', 'b')
Querying the table like the following:
SELECT * FROM my_table ORDER BY my_enum_field ASC;
The result order will be in the order of the enum indexes and not the value meaning that the records with.
myenumfield</code> value default</code> will appear before the the rest with second coming the c</code> value.
In order to get the enum alphabetic order you need to cast
to a string like
SELECT * FROM my_table ORDER BY CAST(my_enum_field AS CHAR) ASC;
Written by Dimitrios Meggidis
Related protips
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Best
#Mysql
Authors
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#