Jak zwrócić określone pola przy group by

0

Potrzebuje zwróci wszystkie pola używając grupowanie tylko po trzech. id i value jest więcej więc mi zwraca że musi być w liści grupowania, można użyć max ale w tedy nie zwraca mi tego id co chce po wykluczeniue duplikatów. .

select id, first_name, surname, birth_date, max(last_date), value  from insured group by first_name, surname, birth_date
1

To zależy w jakiej bazie danych.

2

No ale tak się nie da, jak chcesz grupować, to nie możesz pokazać 5 róznych wartości dla id krtóre wchodzą w grupę. Możesz to obejść, działając funkcją agregującą na takim polu np MAX, ale wtedy ci pokaże maksymalna wartość takiego pola.

0
katakrowa napisał(a):

To zależy w jakiej bazie danych.

oracle

1

Nie zwrócisz różnych id jak grupujesz, po to się grupuje dane żeby np zliczyć ile jest takich samych danych itd
wytłumacz lepiej co chcesz osiągnąć, bo to co napisałeś to mi się nie trzyma kupy

0
Tomek Pycia napisał(a):

No ale tak się nie da, jak chcesz grupować, to nie możesz pokazać 5 róznych wartości dla id krtóre wchodzą w grupę. Możesz to obejść, działając funkcją agregującą na takim polu np MAX, ale wtedy ci pokaże maksymalna wartość takiego pola.

zgadza się ale pewnie idzie to jakoś obejść . Jak usunąć duplikaty po tych trzech kolumnach do tego zwrócić ostatnią datę z odpowiednimi watościami

0
biela_ napisał(a):

Nie zwrócisz różnych id jak grupujesz, po to się grupuje dane żeby np zliczyć ile jest takich samych danych itd
wytłumacz lepiej co chcesz osiągnąć, bo to co napisałeś to mi się nie trzyma kupy

Chce usunąć duplikaty po first_name, surname, birth_date do tego ostatnia data zapisu i zwrócić odpowiednie kolumny id first_name .....

0

Ale to jest nielogiczne. Albo robisz, maks, min, avg itp albo nie dodajesz tych pól. może ty nie powinieneś używać group by tylko np funkcji okienkowych. Jaki problem leży u podstaw tego rozwiązania.

0
Tomek Pycia napisał(a):

Ale to jest nielogiczne. Albo robisz, maks, min, avg itp albo nie dodajesz tych pól. może ty nie powinieneś używać group by tylko np funkcji okienkowych. Jaki problem leży u podstaw tego rozwiązania.

Pisałem już chce znalażć nie duplikujące się wiersze first surname bitrh_date po ostatniej dacie zapisu

0

Czyli potrzebujesz wyciągnąć ostatnio wpis na każdego człowieka, czy każdego człowieka, który występuje tylko raz w bazie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1