изменить поле года в Interbase - PullRequest
0 голосов
/ 04 января 2011

У меня есть таблица с несколькими строками, показывающими неправильную дату года. Формат даты: MM/DD/YYYY, но он показывает год как 1933 вместо 2011.

Как изменить год с помощью SQL в Interbase? Я обнаружил, что могу сделать CDATE с другими базами данных, но не смог найти эквивалент на Interbase.

1 Ответ

0 голосов
/ 05 января 2011

Что-то в этом роде может работать. Предполагается, что все даты в 1933 году должны быть обновлены. CAST (), EXTRACT () и оператор конкатенации ('||') являются стандартным SQL.

UPDATE yourtablename
SET date_column = 
  CAST('2011-' || 
        EXTRACT(month from date_column) || '-' || 
        EXTRACT(day from date_column)  as DATE)
WHERE date_column BETWEEN '1933-01-01' and '1933-12-31'

Скорее всего, если у вас нет ограничения CHECK для этого столбца, больше дат 1933 года появится раньше или позже.

...