Вы забыли использовать предложение GROUP BY в запросе, потому что вы используете другие столбцы с агрегатной функцией COUNT
. Также всегда используйте правильные явные объединения -
SELECT LD.PROVIDER_NUM,
LD.LOCALDOCTORFIRSTNAME,
LD.LOCALDOCTORLASTNAME,
LD.LOCALDOCTORPHONENUM,
A.ADDRESS_STREET,
A.POSTCODE,
PA.APPOINTMENTDATE,
COUNT(PA.PROVIDER_NUM) AS PATIENTREFERRED
FROM PATIENTAPPOINTMENT PA
JOIN LOCALDOCTORS LD ON PA.PROVIDER_NUM = LD.PROVIDER_NUM
JOIN ADDRESS A ON LD.ADDRESS_ID = A.ADDRESS_ID
WHERE PA.APPOINTMENTDATE >=ADD_MONTHS(SYSDATE,-6)
GROUP BY LD.PROVIDER_NUM,
LD.LOCALDOCTORFIRSTNAME,
LD.LOCALDOCTORLASTNAME,
LD.LOCALDOCTORPHONENUM,
A.ADDRESS_STREET,
A.POSTCODE,
PA.APPOINTMENTDATE;