Как добавить вектор столбца в существующую таблицу в SQL? - PullRequest
0 голосов
/ 27 февраля 2020

как я могу добавить вектор столбца, который я создал с помощью SELECT (манипулируя столбцом существующей таблицы), к этой существующей таблице?

Это моя стартовая матрица:

name    date of Birth
Mark    15/01/1987
John    27/05/1945
Lisa    3/04/1981

Я создаю с помощью SELECT и функции даты их возраста:

Age
33
74
38

Как я могу создать новую таблицу (с именем table_new), в которой я добавляю новый столбец (Age) к существующей сформированной матрице по имени и дате рождения в SQL? Следующим образом:

    name    date of Birth   Age
    Mark    15/01/1987   33
    John    27/05/1945   74
    Lisa    3/04/1981    38

1 Ответ

1 голос
/ 27 февраля 2020

Я бы не рекомендовал хранить эту производную информацию в самой таблице - возрасты со временем меняются, поэтому обслуживание информации будет утомительным.

Вместо этого вы можете создать представление. В Postgres вы можете использовать функцию даты age(), которая возвращает interval, который представляет разницу дат, а затем извлекает часть года:

create view myview(name, dob, age) as 
select
    name,
    dob,
    extract(year from age(dob))
from mytable
...