ОК, вот простая абстракция проблемы:
2 переменных (male_users и female_users) для хранения 2 групп пользователей, то есть мужчин и женщин
- 1 способ - использовать два запроса для их выбора:
select * from users where gender = 'male'
, а затем сохраните результат в male_users
select * from users where gender = 'female
', а затем сохраните результат в female_users
- Другой способ - запустить только один запрос:
'select * from users
', а затем перейдем к набору результатов для фильтрации пользователей-мужчин в программе
PHP-фрагмент кода будет выглядеть следующим образом:
$result = mysql_query('select * from users');
while (($row=mysql_fetch_assoc(result)) != null) {
if ($row['gender'] == 'male'){// add to male_users}
else if ($row['gender'] == 'female'){// add to female_users}
}
какой из них более эффективен и рассматривается как лучший подход?
это просто простая иллюстрация проблемы. реальный проект может иметь таблицы lager для запроса и дополнительные параметры фильтра.
заблаговременно!