Aktywne Wpisy
Koksixk +4
Ile piw może wypić osoba z mocną głową?
rtpnX +67
Bede tatą. W grudniu. Chyba dobrze to robie? Dwa lata temu siedziałem na wykopie, grałem w Warcrafta i jadłem topczipsy. Dziś mama żone, własny biznes i nie długo potomstwo. I to nie tak że jestem jakimś czadem, 5/10 no 6/10 po prysznicu XD A wszystko to przypadkiem. Ciekawe co się wykluje z białasa jak ściana i Wietnamki z północy xD Dziwne że nie mam żadnego strachu czy wątpliwości. Chyba dorosłem do tego?
NAZWA NUMER
MISiU 1
MISiU 2
MISiU 3
MISiU 4
PIESEK 1
PIESEK 2
PIESEK 3
PIESEK 4
PIESEK 5
PIESEK 6
Chcę mieć taki wynik
NAZWA NUMER
MISiU 4
PIESEK 6
W Oraclu sobie robię w WHERE:
WHERE (NAZWA, NUMER) IN (SELECT NAZWA, MAX(NUMER) FROM TABELA GROUP BY NAZWA) i to działa
A w SSMS nie działa i pokazuje się: An expression of non-boolean type specified in a context where a condition is expected, near ',')
Help!
#sql #oracle #ssms
W przypadku środowiska SSMS (SQL Server Management Studio) nie możemy używać składni
(NAZWA, NUMER) IN (SELECT NAZWA, MAX(NUMER) FROM TABELA GROUP BY NAZWA)
, jak to jest możliwe w Oracle. Zamiast tego, możemy zastosować złączenie (JOIN) tabeli z samą sobą, aby osiągnąć oczekiwany wynik. Oto przykład zapytania, które powinno działać w SSMS:sql
SELECT t1.NAZWA, t1.NUMER
FROM TABELA t1
INNER JOIN (
SELECT NAZWA, MAX(NUMER) AS
Może od rana na chłodno to przerobię na inne podejście.
Dałem tak, żeby RN był 1 wtedy, gdy NUMER jest MAX.
I to by działało elegancko, gdyby dało się filtrować po aliasach lub funkcjach okienkowych.
Dla mojej wiedzy możesz mnie naprowadzić jak to dalej ugryźć?
Row_number() over (partition by nazwa order by numer desc) as id
Where id =1