Очень непонятно, какова цель вашего запроса.
Немедленное решение - переместить условие из условия having
в предложение where
, поскольку используемый им столбец не является частью предложения group by
- и использовать правильный синтаксис соединения и литералы даты:
select frstname, addr
from medication m
inner join patient p on m.patientnum = p.ptnum
where finish_date = date '2020-01-29'
group by frstname, addr
Я бы также настоятельно рекомендовал ставить перед каждым столбцом префикс таблицы, к которой он принадлежит, используя псевдонимы таблиц, которые я добавил к запрос (m
для medication
, p
для patient
).
Это может или не может сделать то, что вы на самом деле намеревались. Если нет, то вам, вероятно, следует задать новый вопрос, предоставив образцы данных, ожидаемые результаты и объяснение того, чего вы пытаетесь достичь sh.