Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> najwyższa wartość dla danego user_id
omj
post
Post #1





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

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


Witam,
mam takie zapytanie:
  1. SELECT
  2. members.id, members.name, members.lastname, payments.id, payments.user_id, payments.begin_date, payments.finish_date, payments.price
  3. FROM members, payments
  4. WHERE members.id=payments.user_id
  5. AND payments.finish_date>=CURDATE()
  6. ORDER BY payments.finish_date
  7. ASC, payments.id ASC

jak to przerobić aby zapytanie pobierało tylko wiersz tabeli gdzie jest najwyższe finish_date dla user_id?

W tej chwili pobiera mi wszystkie wpisy dla user_id, które mają finish_date większą od CURDATE(), a bym chciał aby pobierało tylko ostatnio dodany wpis czyli chyba ten z największą finish_date.

Jakby ktoś był tak miły i pomógł to będę wdzięczny :-)

Ten post edytował omj 15.11.2013, 23:18:56
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
omj
post
Post #2





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

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


Dziękuję piknie.

Wygląda na to, że działa mi takie zapytanie:
  1. SELECT
  2. members.id, members.name, members.lastname
  3. FROM members
  4. JOIN
  5. (
  6. SELECT payments.id, payments.user_id, payments.begin_date, MAX(payments.finish_date) AS finish_date, payments.price
  7. FROM payments
  8. GROUP BY payments.user_id
  9. )
  10. AS payments
  11. WHERE members.id=payments.user_id AND payments.finish_date>=CURDATE() ORDER BY payments.finish_date ASC, payments.id ASC

ale, dane z tabeli payments nie są zwracane, np kod:
  1. echo stripslashes($wiersz['begin_date']);

nie wyświetla mi wartości.
Czy może ktoś mi podpowiedzieć co robię nie tak?
Go to the top of the page
+Quote Post

Posty w temacie


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: 12.10.2025 - 18:26