Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zlozone zapytanie [mysql5]
altruista
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 13.09.2006

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


witam.

jest prosta tabla "TABELA" o strukturze z trzema kolumnami:

"ID, "COS" oraz "DATA"


"ID" - KP
"COS" powtarza się (nie jest kluczem podstawowym)
"DATA" jest zwykla datą

w jakis sposob wybrać "ID" dla danego zbioru takich samych "COS" z najwyzsza "DATA" ?


  1. SELECT ID, COS, max(DATA) FROM `TABELA` WHERE fundusz IN (SELECT id FROM `COSIE` WHERE kategoria = 2) GROUP BY COS


uzyskuje wtedy jedynie najwyzsza DATA dla grupy "COS"ów ale niestety nie mam ID dla ktorego ta DATA jest najwyzsza

Ten post edytował altruista 18.03.2007, 12:19:37
Go to the top of the page
+Quote Post
wijet
post
Post #2





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 20.12.2005
Skąd: Łódź

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


Nie wiem czy dobrze rozumiem ,ale skoro masz najwyzsza date dla grupy cosow to chyba wystarczy dopasowac

  1. SELECT * FROM tabelka t,(SELECT COS, max(DATA) max_data FROM `TABELA` WHERE fundusz IN (SELECT id FROM `COSIE` WHERE kategoria = 2) GROUP BY COS) a WHERE t.DATA = a.max_data AND a.cos = t.cos


--------------------
Go to the top of the page
+Quote Post
miggie
post
Post #3





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 12.11.2006
Skąd: Rudziniec

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


  1. SELECT cos, id, max(DATA)
  2. FROM `temp` GROUP BY cos


to powinno pomóc (u mnie zadziałało na przykładowych danych)
Pytania zagnieżdżone nie są konieczne
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: 19.08.2025 - 14:19