У меня был точно такой же вопрос.Чтобы получить лучшее представление, я провел небольшой эксперимент:
Я выполнил один и тот же запрос три раза (с MYSQL_ASSOC, MYSQL_BOTH и MYSQL_NUM соответственно) несколько раз, чтобы получить три средних времени.Оказалось, что в моем эксперименте MYSQL_NUM был примерно на 17% быстрее, чем MYSQL_ASSOC, а MYSQL_ASSOC был примерно на 16% быстрее, чем MYSQL_BOTH.
Я уверен, что мой маленький эксперимент имеет свои недостатки, но я уверен, что он идет вправильное направление.
Так что я бы сказал, что MYSQL_ASSOC дает вам хороший компромисс, потому что вы все еще можете переключать столбцы в своей таблице ...