Я пытаюсь создать COUNTRY_NAME, и пару чида страны между каждой страной, которые являются соседями:PostgreSql не смогли создать вид из-за «дубликат колонка»
Вот схема:
CREATE TABLE country (
cid INTEGER PRIMARY KEY,
cname VARCHAR(20) NOT NULL,
height INTEGER NOT NULL,
population INTEGER NOT NULL);
CREATE TABLE neighbour (
country INTEGER REFERENCES country(cid) ON DELETE RESTRICT,
neighbor INTEGER REFERENCES country(cid) ON DELETE RESTRICT,
length INTEGER NOT NULL,
PRIMARY KEY(country, neighbor));
Моего запрос :
create view neighbour_pair as (
select c1.cid, c1.cname, c2.cid, c2.cname
from neighbour n join country c1 on c1.cid = n.country
join country c2 on n.neighbor = c2.cid);
Я получаю код ошибки 42701, что означает, что существует дубликат столбца.
Действительное сообщение об ошибке я получаю:
ERROR: column "cid" specified more than once
********** Error **********
ERROR: column "cid" specified more than once
SQL state: 42701
Я не уверен, как обойти проблему ошибки, так как я хочу пару соседних стран с названием страны и их ИДС.