Krzysztof Z.

Krzysztof Z. Programista PHP/
Webdeveloper

Temat: mysql problem z zapytaniem

 
photos:
id
id_str
src
pozycja


pages:
id
nazwa
Chcę wybrać po 1 najnowszym zdjęciu względem pozycji (jak najmniejsza pozycja) wraz z nazwą strony o id strony np 10 Proszę o radę ;)Krzysztof Z. edytował(a) ten post dnia 08.04.11 o godzinie 17:31Krzysztof Z. edytował(a) ten post dnia 08.04.11 o godzinie 17:31Krzysztof Z. edytował(a) ten post dnia 08.04.11 o godzinie 17:32
Patryk Sosiński

Patryk Sosiński Architekt,
Specjalista GIS,
Programista

Temat: mysql problem z zapytaniem

Nie mam mysql zainstalowanego żeby sprawdzić, ale coś takiego powinno działać:

select a.*, b.nazwa
from photos a, pages b
where
a.id_str = b.id
and b.id = 10
and a.pozycja = (select min(pozycja) from photos where id_str = 10 group by ...)

jeśli jest kilka rekordów z najmniejszą pozycją to musisz to ograniczyć do jednego rekordu, w mysql jest chyba coś takiego jak LIMIT. Podzapytanie musi Ci zwrócić jeden rekord.

Można jeszcze pokombinować z HAVING i GROUP BY.Patryk Sosiński edytował(a) ten post dnia 08.04.11 o godzinie 19:11
Paweł Tupaj

Paweł Tupaj Główny Specjalista
ds. systemu ERP /
Kierownik Projektu

Temat: mysql problem z zapytaniem

SELECT top 1 //zapytanie top zwraca tylko 1 wiersz
FROM photos a, pages b
WHERE a.id_str = b.id
ORDER BY pozycja

lub jak kolega wyzej z uzyciem LIMIT

SELECT a.*, b.nazwa
FROM photos a, pages b
WHERE a.id_str = b.id
ORDER BY pozycja
LIMIT 0,1 Paweł T. edytował(a) ten post dnia 08.04.11 o godzinie 20:52
Krzysztof Z.

Krzysztof Z. Programista PHP/
Webdeveloper

Temat: mysql problem z zapytaniem

dzięki wielkie ;)

Następna dyskusja:

Problem - Mysql




Wyślij zaproszenie do