У меня есть два файла: apt и registration_history. Второй файл имеет несколько записей , ссылающихся на отдельные записи в apt.Как передать значение записи в подзапрос (PostgreSQL)?
Как получить только последнюю запись в истории назначения, которая ссылается на запись в apt изнутри подзапроса?
Редактировать # 1: Вопрос не столько в том, как группировать, сколько в том, как передать внешнее значение (назначение_recid) в подзапрос, не группируя весь файл_соединения_истории на неиспользуемые имя_события. Поэтому я не думаю, что это дублированный вопрос. (Несмотря на то, что это noobie, может получиться то же самое).
PostgreSQL 9,3
ERROR: invalid reference to FROM-clause entry for table "apt" SQL state: 42P01 Hint: There is an entry for table "apt", but it cannot be referenced from this part of the query.
select apt.*, h.*
from apt
join appointment_history h on (h.appointment_recid = apt.appointment_recid)
join (
select max(tposted) as tposted
from appointment_history a
where a.appointment_recid = apt.appointment_recid) currenthx
on (currenthx.tposted = h.tposted)
ТИА
Можете ли вы поделиться некоторыми данными примера и результатом, который вы пытаетесь получить за это? – Mureinik
Вы имеете в виду две таблицы или два файла? –
Возможный дубликат [Выбрать первую строку в каждой группе GROUP BY?] (Http://stackoverflow.com/questions/3800551/select-first-row-in-each-group-by-group) – pozs