[ stex @ 20.05.2005. 11:14 ] @
SELECT *,(SELECT max(datum) FROM tabela2 WHERE tabela2.sifra = tabela1.sifra) AS datum
FROM tabela1
WHERE datum >= "20050101"

Prijavljuje gresku:
#1054 - Unknown column 'datum' in 'where clause'

Upit radi bez uslova (WHERE) i doda mi polje 'datum' sa tacnim podacima ali
cim dodam uslov za to dodato polje javi mi gresku.
[ Dusan Marjanovic @ 20.05.2005. 12:11 ] @
Ići će lakše ako postaviš ovde da se vidi struktura tabela, koja polja ima i sl. Jesi li probao da staviš tabelaX.datum umesto samo datum?
[ stex @ 20.05.2005. 12:41 ] @
Tabela1
sifra,ime,prezime...

Tabela2
ID,sifra,datum

Treba da izdvojim iz tabele2 najveci datum za datog korisnika koji je veci od nekog datuma iz uslova.

Probao sam da stavim "AS tabela2.datum" ali mi tu prijavljuje gresku.
[ jablan @ 20.05.2005. 12:47 ] @
Mislim da tako neće moći. Kada se evaluira where uslov endžin ne zna za aliase. Probaj ili da prebaciš subselect u where uslov ili da preformulišeš ceo query nekim JOIN-om recimo.
[ SmilieBG @ 20.05.2005. 18:15 ] @
koja je verzija MySQL-a? SubSelects su tek ok 4.x ili mozda cak od 5. verzije podrzani...

U suprotnom moras join da pravis...

Poz,
Sale
[ _owl_ @ 20.05.2005. 23:25 ] @
Takodje postoje razlicite vrste subselect-ova u zavisnosti gde se nalaze u upitu, a cini mi se da ovaj koji ti koristis nije podrzan u MySQL-u. Na brzinu sam pogledao strukturu tabela koje imas i nije mi jasno zasto nisi napravio upit preko JOIN-a (jednostavniji, portabilniji, mozda cak i brzi).
[ stex @ 23.05.2005. 12:50 ] @
Uradio sam na kraju preko LEFT JOIN i radi. Steta sto ne moze onako, imam jos par slicnih sql-a kod kojih bi mi bas onako odgovaralo.