Это ни в коем случае не запрос, контекст, фендербендер. Это контекст определения данных. GENERATED ALWAYS или GENERATED BY DEFAULT - это атрибут столбца, который вы определяете при создании таблицы или изменении таблицы для создания или изменения столбца.
Синтаксис Vertica для этого является предложением DEFAULT определения столбца.
Если я посмотрю документ Oracle, здесь:
https://oracle-base.com/articles/11g/virtual-columns-11gr1
Я напишу их пример в Vertica так:
CREATE TABLE employees (
id INTEGER,
first_name VARCHAR(10),
last_name VARCHAR(10),
salary NUMERIC(9,2),
comm1 NUMERIC(3),
comm2 NUMERIC(3),
salary1 NUMERIC(9,2) DEFAULT (ROUND(salary*(1+comm1/100),2)),
salary2 NUMERIC(9,2) DEFAULT (ROUND(salary*(1+comm2/100),2)),
CONSTRAINT employees_pk PRIMARY KEY (id)
);
INSERT INTO employees (id, first_name, last_name, salary, comm1, comm2)
VALUES (1, 'JOHN', 'DOE', 100, 5, 10);
INSERT INTO employees (id, first_name, last_name, salary, comm1, comm2)
VALUES (2, 'JAYNE', 'DOE', 200, 10, 20);
COMMIT;
SELECT * FROM employees;
-- out id | first_name | last_name | salary | comm1 | comm2 | salary1 | salary2
-- out ----+------------+-----------+--------+-------+-------+---------+---------
-- out 1 | JOHN | DOE | 100.00 | 5 | 10 | 105.00 | 110.00
-- out 2 | JAYNE | DOE | 200.00 | 10 | 20 | 220.00 | 240.00
-- out (2 rows)
-- out
-- out Time: First fetch (2 rows): 182.567 ms. All rows formatted: 182.674 ms