Можно ли получить выделенные поля одним запросом (одной строкой) в один массив.

Schwejk

Новичок
Можно ли получить выделенные поля одним запросом (одной строкой) в один массив.

Всем привет.
Объясню на примере суть вопроса:
Есть таблица table с 15 записями, к примеру, делаем запрос
PHP:
$query="SELECT * FROM table";
за тем чтобы получить эти запись ОБЫЧНО делаю так
$mq=mysql_query($query);
while ($table=mysql_fetch_array($mq)) {
  $table['name'];
  ....
}
То есть я перебираю одно за другим.
А возможно такое, чтобы получить одной строчкой результат выполнения запроса. Ну то есть
PHP:
$table=функция($mq); // и в массиве $table уже содержится все 15 записей
 

Mozart

Новичок
Я бы на вашем месте разобрался, что делает код в каждой строке.
 

Schwejk

Новичок
а я бы на вашем месте, простите, молчал, если бы не мог дать вразумительных ответов.
Пусть простит на модератор...
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Schwejk
1. Угомонитесь. Не хамите.

2. Зачем это нужно?
 

TutanXamoN

Новичок
Напишите ету функцию если она вам нужна в чём проблема?
Выглядеть она будет приблизительно так:
PHP:
function get_result($res)
{
    for($i=0;$i<mysql_num_rows($res);$i++)
    {
     $table[$i]=mysql_fetch_assoc($res);
    }
    return $table;
}

ИМХО: смысла в етом действии нет ибо в первом случае мы выполняем прогон по всему результату с обработкой/выводом данных. А при использовании такой функции сначала прогоняем и вносим всё в массив а потом проходим по тому же массиву.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Schwejk
Я думаю, что ответ на вопрос да/нет Вы можете найти самостоятельно в мануале.
[m]mysql[/m]

-~{}~ 04.11.07 14:16:

TutanXamoN
Schwejk

И где здесь

То есть я перебираю одно за другим.
А возможно такое, чтобы получить одной строчкой результат выполнения запроса.
?
:)
 

TutanXamoN

Новичок
Истинный дипломат всегда может убедить человека что ему нужно совсем не то что ему кажеться было нужно а совсем то что получилось.
 

Schwejk

Новичок
Автор оригинала: Mr_Max
Schwejk
Я думаю, что ответ на вопрос да/нет Вы можете найти самостоятельно в мануале.
[m]mysql[/m]

-~{}~ 04.11.07 14:16:

TutanXamoN
Schwejk

И где здесь


?
:)
В цикле
while ($table=mysql_fetch_array($mq)) {
....
}
вот этот цикл равен все равно, что 15 раз написать
$table=mysql_fetch_array($mq))
print $table['name']; // здесь будет одно
$table=mysql_fetch_array($mq))
print $table['name']; // здесь будет другое уже
// ну если конечно эти записи уже изначально разные :)
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Функции БД работают со строками.
"Волшебной" ф-ции работы с БД, которая достанет сразу всё - нет.

-~{}~ 04.11.07 14:31:

я интуитивно догадываюсь, что Вы хотели спросить.
И свой ответ Вы уже получили.

Но впредь, когда у Вас спрашивают "Зачем?"
потрудитесь обяснить зачем. ;)

-~{}~ 04.11.07 14:34:

-~{}~ 04.11.07 14:35:

implode
 

Schwejk

Новичок
Автор оригинала: Mr_Max
Функции БД работают со строками.
"Волшебной" ф-ции работы с БД, которая достанет сразу всё - нет.

-~{}~ 04.11.07 14:31:

я интуитивно догадываюсь, что Вы хотели спросить.
И свой ответ Вы уже получили.

Но впредь, когда у Вас спрашивают "Зачем?"
потрудитесь обяснить зачем. ;)

-~{}~ 04.11.07 14:34:



-~{}~ 04.11.07 14:35:


implode
В общем на самом деле долгая история. Есть 1 таблица в ней каждая запись это определенный каталог, у каждой записи есть id_catalog и id_parent. 1 Это уникальный идентификатор каталога, а второе индекс указывающий кокому каталогу принадлежит текущий каталог. Так вот Получился каталог с бесконечным вложением. К нему еще одну таблицу привязал - что будет хранится в этих каталогах . Ну так вот проблема была в том, чтобы подсчитать сколько в том или ином каталоге хранится записей 2-й таблицы.
 
Сверху