Союз в PostgreSQL - PullRequest
       9

Союз в PostgreSQL

1 голос
/ 10 мая 2019

Я хочу добиться следующего поведения 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);

1 Ответ

1 голос
/ 10 мая 2019

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...