а в чем проблема сделать такой отчет?
берем все id из contract для конкретной, интересующей, группы:
Код:
SELECT id, title FROM contract WHERE (gr & (1 << ?)) > 0 ORDER BY title
и перебираем их в цикле
получаем period таким запросом
Код:
SELECT DATE_FORMAT(MAX(start), "%Y%m") FROM calculate_period_' . dialup_mid . ' WHERE cid = ?
потом используем его тут:
Код:
SELECT DATE_FORMAT(MAX(session_stop), "%Y-%m-%d") FROM log_session_' . dialup_mid . '_' . period . ' WHERE lid = (SELECT id FROM user_login_' . dialup_mid . ' WHERE cid = ? ORDER BY id LIMIT 1)
потом тупо выводим title и дату например в CSV файл, грузим в ёксель, сортируем и смотрим кто и когда последний раз выходил в инет
допилить по нужде