SQL: сумма всех столбцов только в одном запросе с использованием UPDATE - PullRequest
1 голос
/ 22 марта 2020

Я получил это назначение в университете. Моя задача - заполнить новый (еще не существующий) столбец моей таблицы значениями: col1 + col2 + col3, используя только один запрос на основе оператора UPDATE в MySQL , В результате у меня будет таблица с 4 столбцами (col1, col2, col3, sum_of_columns).

И как я могу это сделать, если UPDATE изменяет только существующие строки?

Ответы [ 2 ]

0 голосов
/ 22 марта 2020

Если новый столбец всегда является суммой трех столбцов, вы можете сделать это

ALTER TABLE table1
ADD COLUMN `sum_of_columns` INT GENERATED ALWAYS AS (col1+col2+col3) STORED NULL;

Это будет ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ.

При вставке строки это будет добавляется при добавлении NULL в столбец 4

0 голосов
/ 22 марта 2020

Попробуйте это

UPDATE sample_table set col4 = col1+col2+col3 ;

В операторе создания таблицы вы можете установить значение по умолчанию как NULL для столбца col4.

...