У меня есть таблица, подобная этой, чтобы сохранить результаты медицинского осмотра и дату отправки отчета и результат. Фактически дата отправления основана на дате clinic_visit. Клиент может иметь один или несколько отчетов (дата может варьироваться)
---------------------------------------
| client_id | date_sent | result |
---------------------------------------
| 1 | 2001 | A |
| 1 | 2002 | B |
| 2 | 2002 | D |
| 3 | 2001 | A |
| 3 | 2003 | C |
| 3 | 2005 | E |
| 4 | 2002 | D |
| 4 | 2004 | E |
| 5 | 2004 | B |
---------------------------------------
Я хочу извлечь следующий отчет из приведенных выше данных.
---------------------------------------------------
| client_id | result1 | result2 | resut3 |
---------------------------------------------------
| 1 | A | B | |
| 2 | D | | |
| 3 | A | C | E |
| 4 | D | E | |
| 5 | B | | |
---------------------------------------------------
Я работаю над Postgresql. функция "кросс-таблицы" здесь не работает, потому что "date_sent" не соответствует каждому клиенту.
Кто-нибудь может дать приблизительное представление о том, как его следует запрашивать?