[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: что быстрее?
Djo
Что будет работать быстрее?
скрипт который 1 раз делает запрос на выборку БД, записывает результат в многомерный массив и работает с ним
или скрипт который обращается к БД каждый раз когда нужно вытащить следующую строчку из таблицы?



Спустя 37 минут, 30 секунд (5.04.2010 - 19:03) vital написал(а):
первое

Спустя 1 минута, 9 секунд (5.04.2010 - 19:04) HardWoman написал(а):
А для первого разве не нужно создавать временные таблицы? Ведь массив нужно где то хранить

Спустя 6 минут, 36 секунд (5.04.2010 - 19:10) Djo написал(а):
Я делаю так:
$r = mysql_query('SELECT * FROM counters');

while ($f = mysql_fetch_assoc($r))
{
$counters[$f['id_kvartira']][$f['cType']][$f['counter']]=$f['cValue'];
}

А через временные таблицы как?

Спустя 13 минут, 38 секунд (5.04.2010 - 19:24) HardWoman написал(а):
Это вариант если тебе в цикле нужно и вывести весь массив. Я же поняла - что выводить нужно , построчно, но при этом держать уже выбранный массив, не делая выборку заново.

Хотя может я что не поняла. да и не знаю может

Спустя 1 час, 23 минуты, 48 секунд (5.04.2010 - 20:48) kirik написал(а):
Ага, стопудов первый вариант.

HardWoman
Тут такое дело:
$r = mysql_query('SELECT * FROM counters'); // делаем запрос, получаем все записи из таблицы

while ($f = mysql_fetch_assoc($r)) // для каждой полученной строчки организуем итерацию
{
$counters[$f['id_kvartira']][$f['cType']][$f['counter']]=$f['cValue']; // в этой итерации загоняем данные полученные из таблицы в переменную-массив
}
// ну и потом уже работаем с массивом $counters


Djo
Только одна фишка.. Не вытаскивай все поля звездочкой. Пиши только те, которые ты будешь использовать

Спустя 10 часов, 53 минуты, 36 секунд (6.04.2010 - 07:41) Djo написал(а):
в данном случае используются все)

Спустя 42 минуты, 42 секунды (6.04.2010 - 08:24) kirik написал(а):
Цитата (Djo @ 5.04.2010 - 23:41)
в данном случае используются все)
А вдруг потом решишь добавить еще с десяток полей? Мало ли.. smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.