множественный проход по результату mysql_query

Статус
В этой теме нельзя размещать новые ответы.

WoZ

Новичок
множественный проход по результату mysql_query

Я получаю результат mysql_query, но могу осуществить только один проход.
Можно ли каким-то образом несколько раз пройтись по выданному результату? Я так понимаю, какой-то внутренний указатель для данного запроса устанавливается в конец и нужно его обнулить...
Заранее спасибо
 

WoZ

Новичок
$result = mysql_query('select a1 from table');
while ($row = mysql_fetch_row($result))
{
...
}

тут необходимо еще раз пройтись по выданному результату, то бишь while ($row = mysql_fetch_row($result)) еще раз.
можно ли это осуществить?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
WoZ
Пишыте $row в массив. По массиву "проходитесь" сколько угодно раз.
 

WoZ

Новичок
Автор оригинала: Mr_Max
WoZ
Пишыте $row в массив. По массиву "проходитесь" сколько угодно раз.
это как вариант, но когда много данных это существенно замедлит работу...
неужто нет возможности сделать некий reset )
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
WoZ
НУ или медленно 1 раз
или 2 раза побыстрее.

По другому, по-моему, никак.
 

cDLEON

Онанист РНРСlub
[offtop]
Я вот тоже шоколадку сегодня кушал....
Хочу reset!!!!!
[/offtop]
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Блин, а ведь точно...
*краснея
 

berkut

Новичок
главное, в некоторых случаях не забывать про mysql_free_result. в ipb2, об этом забыли, с парой модов по 12 мб кушал на некоторые страницы
 

Фанат

oncle terrible
Команда форума
когда много данных, то обработкой их должна заниматься БД, а не многопроходный скрипт
 

WoZ

Новичок
2 berkut
спасибо большое

2 Фaнат
не всегда можно ограничится одной лишь обработкой базой
 

Фанат

oncle terrible
Команда форума
Человек, не умеющий читать документацию, не должен говорить "не всегда можно".
Он должен говорить "к сожалению, мне не хватает знаний сделать средствами базы. Буду рад, если вы мне подскажете."
 

WoZ

Новичок
Тогда обьясни плиз как делать.

Задача слудующая. Есть таблица (CatId int unsigned, ParentId int unsigned, CatName varchar(100))

таблица характеризует категории товаров.
по сути, организовывается список смежности - CatId - ид данный категории, а ParentId - ид родителя, например

1 0 cat1
2 0 cat2
3 1 cat3
4 1 cat4
5 1 cat5
6 2 cat6
7 2 cat7
8 2 cat8
9 0 cat9
10 4 cat10
11 4 cat11


3 и 4 подкатегории категории 1.
+ вложенность может быть любая.
и как средствами БД организовать вывод массива, следующего вида...

(по запросу 4 )

1 0 cat1
2 0 cat2
3 1 cat3
4 1 cat4
10 4 cat10
11 4 cat11
5 1 cat5
9 0 cat9

надеюсь ясно описал...
 

Nogrogomed

Новичок
боян

в поиск по слову "деревья"

П.С. Только вот не пойму, как вы реализовывали алгоритм методом прохода 2-х раз по результату запроса. SELECT * FROM `...`?
 

WoZ

Новичок
а как ты в БД деревья хранить будешь если не секрет? )

а как будет классно потом вставлять новые данные в дерево... )))

З.Ы. еще про красно-черные забыли...
 

crocodile2u

http://vbolshov.org.ru
WoZ
Не нужно ли тебе построить дерево на JavaScript случаем? Если угадал - то я бы посоветовал копать в сторону AJAX - это гораздо полезнее в случае больших деревьев с большим уровнем вложенности.
 

WoZ

Новичок
crocodile2u

да нет же. это не я про деревья поднял. мне нужно совсем другое
З.Ы. с mysql_data_seek все чудно, но вот говорят, что можно реализовать без проходов, а лишь средствами самой СУБД.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху