Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Grupowanie sql wyświetlanie najnowszych elementów
arzach
post
Post #1





Grupa: Zarejestrowani
Postów: 332
Pomógł: 6
Dołączył: 27.11.2008

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


Witam mam taką tabelkę
ID data name
1 2012.11.06 a
1 2012.11.03 b
1 2012.11.07 c
1 2012.11.08 d
1 2012.11.05 e
2 2012.11.11 f
2 2012.11.13 g
2 2012.11.08 h
2 2012.11.08 i
2 2012.11.20 j
3 2012.11.11 k
3 2012.11.13 m
3 2012.11.08 n
3 2012.11.08 o
3 2012.11.20 p
3 2012.11.08 r

I grupuje ją po id
Czyli
  1. SELECT id, DATA, name FROM tabela GROUP BY id


I jak zrobić grupowanie żeby kolumny zwracały najnowszą wartość według daty ?

Wynik jaki chcę trzymać

ID data name
1 2012.11.08 d
2 2012.11.20 j
3 2012.11.13 m

Próbowałem coś z
  1. SELECT id, DATA, name FROM tabela WHERE MAX(DATA) GROUP BY id

ale nie działa.

Ten post edytował arzach 7.11.2012, 13:12:47
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mmmmmmm
post
Post #2





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


  1. SELECT p.`id_pracownika` , p.`godzina` , p.`stanowisko` , p.`dzien_tygodnia` , (p.`godzina` -8) AS `Liczba`
  2. FROM plan p JOIN (
  3. SELECT `id_pracownika` , Min(`godzina`) AS `godzina`
  4. FROM plan
  5. WHERE `id_pracownika` NOT
  6. IN (
  7. SELECT `id_pracownika`
  8. FROM plan
  9. WHERE `dzien_tygodnia` =2
  10. AND `godzina` =8
  11. )
  12. AND `dzien_tygodnia` =2
  13. GROUP BY id_pracownika
  14. ) AS Sub
  15. ON Sub.id_pracownika=p.id_pracownika AND p.godzina=Sub.godzina
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 24.12.2025 - 09:24