Я хочу добиться следующего поведения NULL AS (база данных Oracle):
CREATE OR REPLACE VIEW cuentaahorroview AS
SELECT IBAN as CCC, Interes, Ultimo_devengo
FROM De_Ahorro
UNION
SELECT CCC, TIPOINTERES as Interes, null as Ultimo_devengo
FROM CUENTAAHORRO@SCHEMA2BD2;
в базе данных PostgreSQL:
CREATE VIEW EditorialView AS
SELECT *
FROM dblink('hostaddr=127.0.0.1 port=5432 dbname=bdp3e1 user=postgres password=1234', 'SELECT * FROM Editorial')
AS t1(nombre VARCHAR(100), CIF integer, ubicacion VARCHAR(50))
UNION
SELECT *
FROM dblink('hostaddr=127.0.0.1 port=5432 dbname=bdp3e2 user=postgres password=1234', 'SELECT * FROM Editorial')
AS t2(nombre VARCHAR(100), CIF integer, NULL);
так как профсоюз работать. Как мне это сделать?
Это ошибка, которую я получаю:
psql:PR3_Vistas.sql:10: ERROR: syntax error at or near "NULL"
LINE 8: AS t2(nombre VARCHAR(100), CIF integer, NULL);
@KaushikNayak вопрос отредактирован
Почему вы пытаетесь использовать «NULL» в качестве типа?
Я просто хочу, чтобы обе стороны объединения имели одинаковое количество атрибутов, как это было в Oracle.
Замените select * на select field1, field2, ... и используйте NULL as fieldx во второй части союза. select * в объединениях всегда плохо — нельзя быть уверенным, что обе таблицы имеют одинаковую структуру.
Я продвинул свой комментарий, чтобы ответить, вы можете действовать на него :)

Замените select * на select field1, field2, ... и используйте NULL as fieldx во второй части союза.
select * в объединениях всегда плохо — нельзя быть уверенным, что обе таблицы имеют одинаковую структуру.
Вы пробовали его запустить? что случилось?