не падает?
Во втором выходит 1970-01-01 ?
Тогда при получение int считает, что это время в unix timestamp
SELECT toDateTime('10000') вот так не падает и тоже считает что unix timestamp
при чем SELECT toDateTime('9999') упадет. А 5 символов уже работает. Но суть понятна, буду кастовать к int'у
Ну кстати, возможно за 4 символа считает, как год, а дальше понимает, что unix
тоже так подумал, но SELECT toDateTime('2001') не работает
потому что ожидается строка в формате yyyy-mm-dd hh:mi:ss
так и не должно. На самом деле, вы делаете какую фигню, если надо чтобы КХ при SELECT func('2001') делал 2001-01-01 00:00:00 то есть такая функция parseDateTimeBestEffort
это я экспериментировал, что бы понять как работает функция. Но вопрос решил явным кастом к UInt'у Спасибо за ответы
Обсуждают сегодня