Mam jeden problem v SQL. Ide o katlog v reklamnom systeme na vymenu textovej reklamy, bannerov aj reklamnych list zaroven. V katalogu su zobrazene servery ktore by mali byt usporiadane podla poctu zobrazeni bannerov a reklamnych list (treba tie hodnoty spocitat a podla toho zoradit). Textove a bannerove reklamy su v jednej tabulke a reklamne listy v druhej.
# servery
CREATE TABLE `servery` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_klient` INT(11) NOT NULL default 0,
`nazov` VARCHAR(20) NOT NULL default '',
`url` VARCHAR(100) NOT NULL default '',
`text` TEXT NOT NULL,
`kategoria` INT(11) NOT NULL default 0,
`katalog` INT(11) NOT NULL default 0,
`schvaleny` INT(11) NOT NULL default 0,
PRIMARY KEY (`id`)
);
# textove a bannerove reklamy
CREATE TABLE `plochy` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_server` INT(11) NOT NULL default 0,
`id_klient` INT(11) NOT NULL default 0,
`velkost` INT(11) NOT NULL default 0,
`pozicia` INT(11) NOT NULL default 2,
`zobrazeni` INT(11) NOT NULL default 0,
`kliknuti` INT(11) NOT NULL default 0,
PRIMARY KEY (`id`)
);
# listove reklamy
CREATE TABLE `lista_plochy` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`id_server` INT(11) NOT NULL default 0,
`id_klient` INT(11) NOT NULL default 0,
`odkazov` INT(11) NOT NULL default 0,
`bg_color` VARCHAR(10) NOT NULL default '#000000',
`zobrazeni` INT(11) NOT NULL default 0,
`kliknuti` INT(11) NOT NULL default 0,
PRIMARY KEY (`id`)
);
Teraz to mam v katalogu spravene tak, ze je to usporiadavane len podla poctu zobrazeni bannerov a robim to tymto SQL prikazom:
SELECT `servery`.`id`, `url`, `nazov`, `text`, `kategoria`, SUM(`zobrazeni`) AS `spolu` FROM `servery` LEFT JOIN `plochy` ON `servery`.`id` = `plochy`.`id_server` GROUP BY `servery`.`id`, `url`, `nazov`, `text`, `kategoria` ORDER BY `spolu` DESC
Lenze odkedy ked som do reklamneho systemu zaviedol tie listy, toto uz nestaci a je treba aby sa spocitali dokopy vsetky hodnoty `plochy`.`zobrazeni` a `lista_plochy`.`zobrazeni` podla daneho serveru (k jednemu serveru moze ist aj viac reklamnych ploch ktore odkazuju na id serveru cez `id_server`). Kdo mi s tymto poradi ako to mam spravit je u mna absolut guru ;-) Diki
>Textove a bannerove reklamy su v jednej tabulke a reklamne listy v druhej.
nechapu proc - lisi se asi jenom ve 2 sloupcich. dej je do jedne tabulky a pridej sloupec, ktery je podle jeho hodnoty treba odlisi (typ_reklamy {0 | 1 | 2})