Mam kwerendy, które wykonuje szereg złączeń i ma kilka kryteriów w klauzuli WHERE, a ja kończąc z wynikiem, który zasadniczo wygląda następująco:SQL przez grupę problemu
| userId | date | otherData |
|--------+------------+------------|
| 1 | 2008-01-01 | different |
| 1 | 2009-01-01 | info |
| 1 | 2010-01-01 | for |
| 2 | 2008-01-01 | each |
| 3 | 2008-01-01 | row |
| 3 | 2009-01-01 | here |
Tak w istocie dla każdego użytkownika będzie jedna lub więcej dat w przeszłości i 0 lub więcej dat w przyszłości.
Muszę jakoś zmniejszyć zbiór danych do jednego wiersza na użytkownika, tylko wybierając wiersz, który ma ostatnio podaną datę. Oznacza to, ze cokolwiek magia GROUP BY
lub HAVING
klauzula dodaje, wynik z góry będzie wyglądać następująco:
| userId | date | otherData |
|--------+------------+------------|
| 1 | 2009-01-01 | info |
| 2 | 2008-01-01 | each |
| 3 | 2009-01-01 | here |
działa dobrze !! ale dodanie DISTINCT nie powoduje usunięcia zduplikowanych wartości, żadnych sugestii? – Rakesh