Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL] Grupowanie z sortowaniem
Grzyw
post
Post #1





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cześć.
Mam następującą strukturę tabeli choroby :
id_wpis_choroby | id_choroba | (...)
oraz drugą tabelę ludki_choruja:
id_ludek | id_choroba

Ludek może mieć wiele chorób, które mogą mieć wiele wpisów.
Próbuję wyciągnąć najnowszy wpis ostatniej choroby każdego z ludków.
SQL wygląda tak:
  1. SELECT * FROM choroby JOIN ludki_choruja USING (id_choroba)
  2. WHERE id_wpis_choroby IN (
  3. SELECT MAX( id_wpis_choroby)
  4. FROM choroby JOIN ludki_choruja USING (id_choroba)
  5. WHERE id_choroba=ludki_choruja.id_choroba
  6. GROUP BY id_choroba)

ale jest on błędny.
Dlatego chciałbym prosić Was o pomoc...

Ten post edytował Grzyw 13.09.2009, 17:28:46


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post
Maciek1705
post
Post #2





Grupa: Zarejestrowani
Postów: 157
Pomógł: 3
Dołączył: 15.06.2009

Ostrzeżenie: (0%)
-----


nie wiem czy chodziło Ci o SQL czy MS SQL SERVER jeśli o ten drugi to tak ma wyglądać:
  1. SELECT *
  2. FROM dbo.choroby
  3. INNER JOIN dbo.ludki_choruja
  4. ON dbo.choroby.id_choroba = dbo.ludki_chorują.id_choroba
  5. WHERE
  6. GROUP BY id_choroba
  7. END
  8. GO

u mnie działa pozdro
Go to the top of the page
+Quote Post
Grzyw
post
Post #3





Grupa: Zarejestrowani
Postów: 561
Pomógł: 75
Dołączył: 19.08.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cześć. Sorry, że nie uściśliłem. Baza stoi na MySQL5


--------------------
Idąc po czyichś śladach, nie zajdziesz ani kroku dalej...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 22:00