[ dona @ 24.04.2004. 22:15 ] @
Imam sledece dvije tabele u bazi Code: create table promjena ( idPromjene int(11) not null auto_increment, idRobe int(11) not null default '0', idKupca int(11) , Datum date, Naziv varchar(50), idDilera int(11), delovodni_broj int(11) not null default '0', PromjenaUlaz double(16,2), PromjenaIzlaz double(16,2), CijenaDobavljaca double(16,3), ZavisniTroskovi double(16,2), CijenaProdaje double(16,3), Porez double(16,2), Rabat double(16,2), Ambalaza int(11), primary key (idPromjene)) type=MyISAM; create table roba ( idRobe int(11) not null auto_increment, Sifra_robe bigint(11), Naziv varchar(50), Autor varchar(50), Jed_Mjere varchar(50), Poreska_Sifra double(16,2) default '0.00', Tip_Ambalaze int(11) not null default '0', primary key (idRobe)) type=MyISAM; u tabeli roba postoji 700 stavki a u tabeli promjena 1500 stavki posto mi je trabalo da bih ubrzao upit koriscenje podupita instalirao sam MySQL 4.1 koji to podrzava, e sad: posto sam kreirao indexe na idRobe u obje tabele u robi kao UNIQUE a u promjenama NORMAL i izvrsim sledeci upit Code: SELECT idrobe,naziv,sifra_robe,Autor,Jed_Mjere,Poreska_Sifra,Tip_Ambalaze, (SELECT CijenaProdaje FROM promjena WHERE roba.idRobe=promjena.idRobe and cijenaprodaje<>0 ORDER BY datum desc,idpromjene desc limit 1) as cijenaprodaje, (SELECT CijenaDobavljaca FROM promjena WHERE roba.idRobe=promjena.IdRobe and cijenadobavljaca<>0 ORDER BY datum desc,idpromjene desc LIMIT 1) as cijenadobavljaca, (SELECT COALESCE(sum(promjenaulaz),0)-COALESCE(sum(promjenaizlaz),0) as Zalihe1 FROM promjena WHERE roba.idRobe=promjena.idRobe) as zalihe From roba order by sifra_robe Puca server tako da se vise ne moze podici bez da se rucno obrisu fajlovi tj. baze sa diska. Ima li resenje za ovo ili .....??? Edit StRiPy: Dodao sam samo code tag radi bolje preglednosti. |