Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Отсортировать массив, полученный из базы

Сообщения:  [1-3] 

 
 автор: cheops   (17.11.2005 в 03:01)   письмо автору
 
   для: Евгений Петров   (16.11.2005 в 22:13)
 

2) Что-то мне кажется, что как раз наоборот второй вариант будет быстрее, не смотря на то, что используется 3 запроса - MySQL всё-таки на C писана, имеет кэш ключей и вообще зверски оптимизирована... если скорость волнует, лучше проверить экспериментальным путём - только первый результат следует выкинуть (он всегда будет немного дольше выполняться).

   
 
 автор: Евгений Петров   (16.11.2005 в 22:13)   письмо автору
 
   для: Xman   (16.11.2005 в 20:12)
 

1) Можно сделать так:
<?
  $query
=mysql_query("SELECT id,type,name FROM items WHERE section=1 ;");
  while(
$items=mysql_fetch_array($query))
  {
    switch(
$items['type'])
    {
      case 
"1": { $food['id'] = $items['id']; $food['name'] = $items['name']; break; }
      case 
"2": { $tech['id'] = $items['id']; $tech['name'] = $items['name']; break; }
      case 
"0": { $other['id'] = $items['id']; $other['name'] = $items['name']; break; }
    }
  }
?>

2) Первый вариант будет работать быстрее, т.к. выполняется всего один запрос к БД.

   
 
 автор: Xman   (16.11.2005 в 20:12)
 
 

Приветсвую всех, вновь собравшихся:)
Помогите отсортировать массив, полученный таким вот образом:

$query=mysql_query("SELECT id,type,name FROM items WHERE section=1 ;");
$items=mysql_fetch_array($query);

Нужно чтоб в массив $food помещались все $item, у которых type=1
в массив $tech - type=2
в $other - type=0
--------------------------
И еще один небольшой вопрос: что будет быстрее работать, то что нужно мне на PHP или то, что ниже,
но уже средствами sql?Что менее будет грузить сервер?

$query=mysql_query("SELECT id,name FROM items WHERE section=1 AND type=1;");
$food=mysql_fetch_array($query);
$query=mysql_query("SELECT id,name FROM items WHERE section=1 AND type=2;");
$$tech=mysql_fetch_array($query);
$query=mysql_query("SELECT id,name FROM items WHERE section=1 AND type=0;");
$other=mysql_fetch_array($query);

--------------------------
Спасибо за внимание!:)

   

Сообщения:  [1-3] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования