

Ogolnie mam dwie tabele - tabele z sesjami i tabele z grupami uzytkownikow.
Chce pobrac informacje jacy uzytkownicy (nalezacy do jakis grup) sa aktualnie online.
Grup jest 5, wiec do teraz wykonuje to 5 zapytaniami, oto one:
SELECT u.user_id, s.session_user, u.friends FROM sessions s, users_groups u WHERE s.session_user != 0 AND s.session_user = u.user_id AND u.friends = 1 SELECT u.user_id, s.session_user, u.standard_users FROM sessions s, users_groups u WHERE s.session_user != 0 AND s.session_user = u.user_id AND u.standard_users = 1 SELECT u.user_id, s.session_user, u.deluxe_users FROM sessions s, users_groups u WHERE s.session_user != 0 AND s.session_user = u.user_id AND u.deluxe_users = 1 SELECT u.user_id, s.session_user, u.corporate_users FROM sessions s, users_groups u WHERE s.session_user != 0 AND s.session_user = u.user_id AND u.corporate_users = 1 SELECT u.user_id, s.session_user, u.corporate_users FROM sessions s, users_groups u WHERE s.session_user != 0 AND s.session_user = u.user_id AND u.corporate_users = 1
Konstrukcja tabeli grupy.
Kod
user_id grupa1 grupa2 ....
245 1 0
296 1 0
itp
245 1 0
296 1 0
itp
Moje pytanie, czy da sie to zrealizowac za posrednictwem mniejszej ilosci zapytan ? Ogolnie zoptymalizowac ten fragment ?