Я думаю, что самый простой способ - добавить еще один столбец:
select comp_id, sum(1) as cnt, count(loan_id) "num_computer", count(st_id) "st_num"
from computer left join
loan
using (comp_id) left join
student
using (st_id)
group by grouping sets ((comp_id), ());
Вы можете поиграть с case
, чтобы получить два значения в одном столбце, но это неудобно, потому что одно - строка, а другое - число.