Я не понимаю точно , что вы делаете, поскольку отсутствует код, но я бы предложил следующее:
Не используйте в то время как с массивами; используйте foreach, это намного более компактно, и это - то, для чего это было сделано.
Не объединять строки вручную, используйте implode ()
Не добавляйте сложности в ваш SQL для подсчета результата; используйте взамен MYSQL FOUND_ROWS ().
В какой-то не связанной заметке я бы предложил обновить PHP-библиотеку mysql до mysqli. Это позволяет несколько запросов, которые сделают вашу жизнь проще.