Ответ 1
Вам нужно имя таблицы/псевдоним в части SELECT
(возможно, (vg.id, name)
):
SELECT (vg.id,name) FROM v_groups vg
inner join people2v_groups p2vg on vg.id = p2vg.v_group_id
where p2vg.people_id =0;
Я попробовал следующий выбор:
SELECT (id,name) FROM v_groups vg
inner join people2v_groups p2vg on vg.id = p2vg.v_group_id
where p2vg.people_id =0;
и я получаю следующую ссылку столбца ошибки "id" неоднозначно.
Вещь, если я попробую один и тот же выбор, но я только прошу (имя), а не для id, это работает. Я новичок в этом, и, возможно, мне не хватает чего-то очевидного. Какие-либо предложения?
Спасибо.
Вам нужно имя таблицы/псевдоним в части SELECT
(возможно, (vg.id, name)
):
SELECT (vg.id,name) FROM v_groups vg
inner join people2v_groups p2vg on vg.id = p2vg.v_group_id
where p2vg.people_id =0;
Я полагаю, что ваша таблица p2vg также имеет поле id, в этом случае postgres не может найти, имеет ли id в SELECT
vg или p2vg.
вы должны использовать SELECT(vg.id,vg.name)
для устранения неоднозначности
SELECT (vg.id, name) FROM v_groups vg
INNER JOIN people2v_groups p2vg ON vg.id = p2vg.v_group_id
WHERE p2vg.people_id = 0;
SELECT vg.id,
vg.name
FROM v_groups vg INNER JOIN
people2v_groups p2vg ON vg.id = p2vg.v_group_id
WHERE p2vg.people_id = 0;