问题
I need to query a single field and order it by serialized data, is that even possible?
my table fields are:
*********************************************
| meta_id | user_id | meta_key | meta_value |
*********************************************
my query looks like this
SELECT user_id FROM $wpdb->usermeta WHERE meta_key='ba_ur'
which works fine but here things start to make no scene to me
meta_value holds a serialized data for example
a:2:{s:4:"data";s:9:"text text";s:6:"number";s:2:"22";}
which when unserialized gives:
array (
'data' => 'text text',
'number' => '22',
)
and i need to order by the number in that serialized data, so back to my question is that even possible? and if so then how?
thanks.
回答1:
No, it is not possible. The only possible case when serialized data is acceptable is when you don't need to search or order by through that data. In all other cases - store your data as a separated fields.
来源:https://stackoverflow.com/questions/6234057/mysql-order-by-serialized-data