Да, to_date не будет доступен для обеих баз данных, так как это расширение SQL, которое было предложено только Oracle.
С каждым погружением становится все сложнее. Дата не совсем то же самое, что и метка времени, поэтому вы застряли там, где вам понадобятся метки времени в некоторых базах данных и даты в других. Это связано с тем, что существуют базы данных, в которых Дата содержит только календарную дату, а не связанные часы, минуты и секунды.
На даты MSSQL также распространяются правила часового пояса платформы, тогда как в других базах данных даты не подчиняются правилам часового пояса аналогичным образом.
В конце концов, если вы действительно хотите, чтобы он работал правильно, вам нужно написать программный слой, который переводит даты в форматы, требуемые базовой базой данных, отказываясь от «одного оператора SQL для выполнения всех дат».