Склоняюсь к первому варианту. Так как здесь просто производится подсчёт. Не зря же, наверное, существует
А с другой стороны может просто выборка будет быстрее, так как здесь и считать не надо, а быстренько выбрал индексированные поля) (вот не знаю насколько быстренько, поэтому и спрашиваю) А уж count() думаю в разы быстрее пробежиться по массиву, чем COUNT(*) по таблице. По-хорошему, надо бы делать вычисления за сколько код выполнится, но я пока не владею такими инструментами