![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 437 Pomógł: 42 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Mam taką tabelę
w której mam listę albumów oraz ORAZ
gdzie są zdjęcia albumów. Relacje są `sk_cms_albums_photos`.`aid` = `sk_cms_albums_list`.`id` Każde zdjęcie w każdym albumie po dodaniu dostaje kolejność (order == 1), a inne są o jeden większe.
za pomocą tego zapytania pobieram wszystkie albumy, w których kolejność == 1 i są najnowsze. Chciałbym za pomocą jednego zapytania wyciągnąć najnowsze zdjęcie z każdego albumu. Wymyśliłem takie zapytanie:
ale nie działa - bardzo proszę o pomoc |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 282 Pomógł: 89 Dołączył: 12.04.2011 Ostrzeżenie: (0%) ![]() ![]() |
Wyjaśnienie: w pierwszym podzapytaniu dostajemy listę dat najnowszego zdjęcia dla wszystkich albumów, bez konkretnej informacji które dokładnie zdjęcie zostało ostatnie dodane, bo tej informacji od razu dostać nie możemy. Najnowsza data oraz numer albumu idą jako ref do drugiego (zewnętrznego zapytania), które zwraca wszystkie kolumny tabeli zdjęć połączone przez pierwszy z brzegu id, który odpowiada dacie i id albumu z pierwszego. Najprawdopodobniej taki id będzie tylko jeden, o ile kilku zdjęć nie dodajemy przez wspólny formularz wykorzystując jeden INSERT, ale nie wiem jak robisz, więc tu jest przypadek ogólny. Przy aktualnej definicji tabel warto dodać:
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.08.2025 - 03:30 |