у меня заработало
CREATE TABLE tt (
date Date,
col1 Int32,
col2 Int32
) ENGINE=MergeTree(date, date, 8192)
INSERT INTO TABLE tt (date, col1, col2) VALUES
('2020-01-01', 11, 22),
('2020-01-02', 33, 44),
('2020-01-03', 77, 99)
ALTER TABLE tt ADD COLUMN col3 Int32 default col1+col2
ALTER TABLE tt UPDATE col3=col3 WHERE 1
ALTER TABLE tt MODIFY COLUMN col3 DEFAULT defaultValueOfArgumentType(CAST(1, 'Int32'))
ALTER TABLE tt DROP COLUMN col1
Только что-то мне подсказывает, что что-то здесь лишнее. Всё здесь верно или что-то подправить можно?
Если можно update, то нельзя ли сразу добавлять с целевым дефолтом, потом делать update по всей таблице, а потом дропать старый столбец?
Обсуждают сегодня