Это зависит от того, что именно вам нужно. Если вам просто нужен подсчет, это относительно просто:
SELECT count(*) count_all
, sum(if(priv_com = 'Private', 1, 0)) count_private
, sum(if(priv_com = 'Company', 1, 0)) count_company
FROM classified
WHERE classified.classified_id=$id
Если, с другой стороны, вам нужны как счетчики, так и данные строк, вы должны либо выполнить отдельные запросы для данных и счетчиков, либо использовать хитрость. Допустим, в вашей таблице есть столбец идентификатора с первичным ключом, который вы можете сделать:
SELECT count(*) count_all
, sum(if(priv_com = 'Private', 1, 0)) count_private
, sum(if(priv_com = 'Company', 1, 0)) count_company
, classified.*
FROM classified
WHERE classified.classified_id=$id
GROUP BY id -- group by on primary key
WITH ROLLUP
Магия WITH ROLLUP
даст вам дополнительную строку со счетчиками для всего запроса. Единственная загвоздка в том, что вы получите эту строку в качестве последней строки всего результата, поэтому, если вы хотите сообщить о количестве до данных, вам придется кэшировать данные строки в массиве php или около того и обрабатывать позже, чтобы создать страницу.