Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Max (datum) i više rezultata

[es] :: MySQL :: Max (datum) i više rezultata

[ Pregleda: 1718 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

weleb

Član broj: 284399
Poruke: 38
*.adsl.net.t-com.hr.



Profil

icon Max (datum) i više rezultata10.06.2014. u 19:16 - pre 120 meseci
Pomoću upita želim saznati koji su članovi aktivni a koji ne. Uvijet da je član aktivan je da je datumDo (tipa date) veći ili jednak CURDATE.

Napravio sam upit kada se provjerava aktivnost pojedinačnog člana i on izgleda ovako:

Code:

SELECT * FROM tblClanstvo WHERE idClana ='.$id.' AND datumDo>=CURDATE() AND datumDo =(SELECT MAX(datumDo)FROM tblClanstvo WHERE idClana ='.$id.'


Gore napisani upit radi i odrađuje posao kako treba.

No nastaje problem kada želim kreirati tj ispisati SVE aktivne članove koji zadovoljavaju gore spomenuti uvijet (datumDo (tipa date) veći ili jednak CURDATE).

Upit koji sam ja kreirao vrati mi sve aktivne članove no ne vrati mi najveći datumDo što bi trebao.

Upit:

Code:

SELECT * FROM tblClanovi JOIN tblClanstvo ON tblClanovi.idtblClanovi=tblClanstvo.idClana WHERE datumDo>=CURDATE() GROUP BY idClana HAVING MAX(datumDo)


Povezao sam dvije tablice jer trebam ispisati podatke o članu...kako riješiti to da mi vrati stvarno najveću vrijednost da datumDo
 
Odgovor na temu

Predrag Supurovic
Pedja YT9TP
Užice

Član broj: 157129
Poruke: 6279

Sajt: pedja.supurovic.net


+1571 Profil

icon Re: Max (datum) i više rezultata10.06.2014. u 22:16 - pre 120 meseci
probaj HAVING datumDo= MAX(datumDo)
 
Odgovor na temu

weleb

Član broj: 284399
Poruke: 38
*.adsl.net.t-com.hr.



Profil

icon Re: Max (datum) i više rezultata11.06.2014. u 08:50 - pre 120 meseci
Opet ništa :(
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1343
*.dynamic.sbb.rs.



+311 Profil

icon Re: Max (datum) i više rezultata11.06.2014. u 09:37 - pre 120 meseci
Code:

SELECT * FROM tblClanovi T1
LEFT JOIN (SELECT idClana, MAX(datumDo) AS datumDo
                 FROM tblClanstvo
                 GROUP BY idClana) AS T2
ON T1.idClana = T2.idClana
WHERE  T2.datumDo>=CURDATE()


Ne radim u MySql-u, možda ima nekih sintaksnih grešaka.
Problem može da se reši na više načina:
- Korelisanim upitom
- Grupisanjem u samom upitu + having
- Grupisanjem u join-u (ovaj primer)

Predlažem ti da proučiš SQL pošto su ovo relativno
prosti upiti i trebao bi da ih pišeš bez problema
ako se baviš developmentom.
 
Odgovor na temu

weleb

Član broj: 284399
Poruke: 38
*.adsl.net.t-com.hr.



Profil

icon Re: Max (datum) i više rezultata11.06.2014. u 12:20 - pre 120 meseci
Hvala, to je to :)

Da, upit je jednostavan no nisam dugo radio sa SQL-om pa sam malo zahrđao... :)
 
Odgovor na temu

[es] :: MySQL :: Max (datum) i više rezultata

[ Pregleda: 1718 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.