Итак, у меня есть таблица пользователей; хранение таких вещей, как имя пользователя, адрес электронной почты и т. д.
Затем у меня есть таблица user_settings. Вместо стандартных столбцов, таких как timestamp_logged_in, profile_views и т. Д., Я организовал его как комбинацию ключ / значение. Например, столбцы:
user_settings_ID user_ID имя значение
Пример записи будет:
82 2 'timestamp_logged_in' '2009-10-10 02: 23: 53'
Это делает настройки немного более проницаемыми. Мне не нужно иметь столбец для хранения новых типов пользовательских настроек. Я обеспокоен тем, что выполнение этого (которое будет хранить каждое значение в виде строки, и я приведу его к соответствующему типу в промежуточном программном обеспечении) затруднит сортировку. Так, например, если бы я хотел получить список пользователей в порядке последнего входа в систему, для сортировки потребовался бы вызов SQL, такой как:
ВЫБЕРИТЕ user_ID ИЗ user.settings WHERE status = 'open' И name = 'timestamp_logged_in' ORDER BY name
Однако это будет сортировать найденные записи как строки. Есть ли способ убедиться, что алгоритм сортировки mysql реализован на основе определенного типа значения (например, принудительно обрабатывать столбец сортировки как строку, целое число, дату-время, метку времени и т. Д.)?
Любые мысли будут действительно оценены.
Благодарю.
Оливер Нассар