mysql order by serialized data?
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.
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.
精彩评论