У меня есть поле, которое меняется, основываясь на некоторых входных сигналов:MySQL сохранить тип в случае, если заявление
SELECT
CASE input
WHEN 1 THEN id
WHEN 2 THEN created_at
WHEN 3 THEN some_varchar_field
END as test
FROM ...
ORDER BY 1 ASC;
Если бы я заказать на этом поле любое числовое поле не отсортированных должным образом, я заметил, что заказ на не сохраняет тип поля, которое было выбрано скорее, как только появится поле VARCHAR/DATETIME, оно вернет этот тип, а затем сохранит тип самого столбца. Мне просто интересно, есть ли способ сохранить тип выбранной записи.
Редактировать: Поле для литья в виде int CAST(id as INT)
не работает Внесение оператора case в порядок не работает.
Вы говорите, что запрос работает? Но верните другой тип данных? Потому что вы обычно не имеете «CASE» с разными типами данных. Но это MySQL, поэтому не удивительно, чтобы эти странные вещи –
Да, сам запрос работает, но он не упорядочивает правильно. И да, mysql делает некоторые странные вещи. – RMT
можете ли вы подготовить рабочий образец на sqlFiddle? –