Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak zapytać MYSQL, by wyslekcjonować jedną najnowszą daną.
pojke22
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 1.05.2011

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


Witam jestem tu świeżak.

Mam taką oto tabele. Są to ceny paliw na stacjach.

Kod
ID   |  Nazw   |  cena  |        data wpisu         |
-----------------------------------------------------
1.   |      a     |   4.50  | 2011-04-28 19:00:00 |
2.   |      b     |   4.23  | 2011-04-26 19:00:00 |
3.   |      b     |   4.45  | 2011-04-27 19:00:00 |
4.   |      a     |   4.45  | 2011-04-25 19:00:00 |


Kompletnie nie wiem jak zrobić, aby zapytanie do bazy, by wyświetlić taki wynik

Kod
ID   |  Nazw   |  cena  |        data wpisu         |
-----------------------------------------------------
1.   |      a     |   4.50  | 2011-04-28 19:00:00 |
3.   |      b     |   4.45  | 2011-04-27 19:00:00 |


Czyli musi byc po jednej stacja i do tego z najnowszą datą aktualizacji.

Bardzo proszę was o pomoc.

Ten post edytował pojke22 1.05.2011, 07:05:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

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


  1. SELECT * FROM (
  2. SELECT * FROM paliwa ORDER BY data_wpisu DESC
  3. ) AS tab GROUP BY nazw
Go to the top of the page
+Quote Post
pojke22
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 1.05.2011

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


Kefirek świetnie tylko, jak wykonuje twój kod to stacje są selekcjonowane, ale sortowane są wg. nazwy. A ja bym wolał by odbywało sie to wg. daty. czyli najnowsza data trafia na gore tabeli.

Jestem totalnie zielony w mysql-u
Go to the top of the page
+Quote Post
pmir13
post
Post #4





Grupa: Zarejestrowani
Postów: 282
Pomógł: 89
Dołączył: 12.04.2011

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


Dosłownie przed chwilą napisałem odpowiedź na bardzo podobne pytanie:
Temat: MySQL Najnowsze zdjecia w kazdym albumie
Wystarczy pozamieniać nazwę tabeli sk_cms_albums_photos->ceny_paliw_na_stacjach czy jak tam masz ją nazwaną,
datę wg której sortujemy: date->data_wpisu,
oraz pole wg którego grupujemy: aid->nazwa_stacji.
Go to the top of the page
+Quote Post
pojke22
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 1.05.2011

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


  1. SELECT p.id,stacja,adres,pb95,pb98,olej,lpg,DATA FROM (SELECT stacja,max(DATA) AS DATA FROM stacjepaliw GROUP BY stacja) p1 JOIN stacjepaliw p ON p.id = (SELECT pu.id FROM stacjepaliw pu WHERE pu.stacja = p1.stacja AND pu.date = p1.DATA LIMIT 1)


Co tu jest zatem źle?

Ten post edytował pojke22 1.05.2011, 10:30:11
Go to the top of the page
+Quote Post
pmir13
post
Post #6





Grupa: Zarejestrowani
Postów: 282
Pomógł: 89
Dołączył: 12.04.2011

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


Zapytanie z poprzedniego wątku działa po zwykłej automatycznej zamianie z każdego edytora obsługującego replace.
Jeśli już bardzo chcesz wymienić konkretne kolumny do wyświetlania, to naturalne jest, że zamieniasz p.* na p.nazwa, a nie na samą nazwę.
Tego właśnie brakuje, a także pomyliłeś date z data.
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 - 10:39