Вы не можете напрямую конвертировать '2010-11-02 00:00:00'
в 20101102000000
в T-SQL, так что да, как вы говорите, вам нужно будет преобразовать строку в нечто, что вы можете привести как bigint
.
declare @str varchar(19) = '2010-11-02 00:00:00'
select cast(replace(replace(replace(@str, '-', ''), ' ', ''), ':', '') as bigint)