У меня есть 300 000 таблиц строк; один из столбцов является varchar (), но он действительно содержит дату xx/xx/xxxx или x/x/xxxx или подобный. Но выполнение следующего теста приводит к ошибке:
SELECT CAST(MyDate as Datetime) FROM MyTable
Проблема состоит в том, что это не говорит мне в который строка …
Я выполнил ряд “ручных” обновлений пробной версией ошибка и выполнил простые обновления для фиксации их, но там получен, чтобы быть некоторыми странными значениями, которые должны или быть удалены или зафиксированы.
Например, я выполнил простой тест, который зафиксировал приблизительно 40 строк:
UPDATE MyTable SET MyDate = REPLACE(MyDate, '/000','/200') FROM MyTable WHERE MyDate like ('%/000%’)
UPDATE MyTable SET MyDate = REPLACE(MyDate, '/190','/199') FROM MyTable WHERE MyDate like ('%/190%’)
Это зафиксировало довольно много странных строк, которые имели даты как 01.01.03 и такой. (Даты располагаются с 1998 до 2010).
Однако я хотел бы знать, какие строки перестали работать в вышеупомянутом выборе.
Каков был бы лучший способ распечатать их так, я могу или удалить их, отредактировать их или видеть, что сделать?Спасибо.