Какой принцип работы mysql_fetch_array() в PHP?
Потому что эта функция и предназначена для перебора записей, возвращённых сервером по запросу. В небуферизированном режиме (mysql_unbuffered_query) она просто получает от сервера следующую строку ответа.
Переходите на mysqli, mysql уже в статусе depricated. Плюс в mysqli есть то, о чём Вы спрашиваете - функция mysqli_result::fetch_all.
Спасибо, все понял!