У меня есть устаревшая база данных SQL Server 2000, в которой есть один столбец с датой, которая по какой-либо причине хранится в виде varchar вместо datetime. Я хочу просмотреть эти данные и использовать поле datetime вместо varchar, чтобы упростить создание отчета по этому полю. Хорошей новостью является то, что большинство значений выглядят так, как будто они могут быть преобразованы непосредственно в дату / время.
Конечно, очевидно, есть некоторые поля, которые были введены таким образом, что их нельзя преобразовать в дату и время. Ради ясности, вот как может выглядеть стол:
CREATE TABLE dbo.user
(
...
birthdate varchar(10)
...
)
И вид может выглядеть примерно так:
CREATE VIEW dbo.UserView
AS
SELECT ...
CAST(u.birthdate AS datetime) AS birthdate
...
FROM user u
WHERE ...
Есть ли способ, которым я могу:
- Получить список всех строк, в которых дата рождения не может быть преобразована в дату и время, если я могу исправить это?
- В случаях, когда я не могу восстановить значение, сделать так, чтобы значение отображалось как NULL или, может быть, даже что-то, что явно не реальная дата рождения пользователя?