Otóż mam pewien problem, gdyż próbuje napisać mechanizm głosowania pod system newsów.
> Schemat dla newsów jest mało ważny (nic nie dodawałem tam odnośnie głosowania).
> Schemat bazy dla tabeli głosów: id | id_news | userid | typ_glosu | (typ głosu: 1 - OK, 2 - ŹLE)
Teraz mam pewien problem, ponieważ chciałbym zliczyć te głosy na OK i na ŹLE, ale w jaki sposób?
Pomyślałem o SELECT w SELECT (zapytanie w zapytaniu) widziałem parę razy na forum php.pl przykłady, ale sam nigdy tego nie stosowałem i nie jestem pewien czy taka metoda okaże się skuteczna.
W tej chwili zapytanie prezentuje się następująco:
mysql_query("select n.*, c.*, u.*, count(g.type) as allVotes from news as n left join kategorie_newsow as c on(n.katid=c.katid) left join uzytkownicy as u on(n.autornewsa=u.userid) left join glosy as g on(n.newsid=g.id_news) ");
Może mi ktoś pomóc? W którym miejscu dać "zapytanie w zapytaniu" gdzie warunek WHERE powinien być "WHERE typ_glosu = 1) oraz "WHERE typ_glosu = 2) i to wszystko pod COUNT.
Czy może lepiej będzie przebudować tabele głosów? coś w stylu: id, id_news, glos_tak, glos_nie i najwyżej będzie się wstawiać TRUE : FALSE w przypadku głosów na TAK / NIE.
Jakie macie propozycje?