Как сгруппировать и объединить совокупные данные из таблицы JOINEed с отношением «1-ко-многим» [закрыто]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как сгруппировать и объединить совокупные данные из таблицы JOINEed с отношением «1-ко-многим» [закрыто]

Сообщение Anonymous »

EDIT::
Может быть, мне следует спросить, как правильно получить набор результатов из базы данных. Если у вас есть 5 объединений с отношением 1:M, вы обращаетесь к базе данных 5 раз за данными??


Я задал этот вопрос около часа назад, но не смог получить подходящего ответа. Я пошел дальше и написал код, который делает именно то, что мне нужно, но ищу лучший способ сделать это.

Этот массив дает мне несколько строк, из которых некоторые нужны только один раз, а другие — много раз. Мне нужно отфильтровать их, как я сделал ниже, но, если возможно, мне нужен лучший способ сделать это.

Array
(
[0] => Array
(
[cid] => one line
[model] => one line
[mfgr] => one line
[color] => one line
[orderid] => one line
[product] => many lines
[location] => many lines
)
[1] => Array
(
.. repeats for as many rows as were found
)
)


Этот код работает отлично, но, опять же, я думаю, что есть более эффективный способ сделать это. Есть ли функция PHP, которая позволит мне немного это исправить?

// these are the two columns that produce more than 1 result.
$product = '';
$orderid = '';

foreach($res as $key)
{
// these produce many results but I only need one.
$cid = $key['cid'];
$model = $key['model'];
$mfgr = $key['mfgr'];
$color = $key['color'];
$orderid = $key['orderid'];

// these are the two columns that produce more than 1 result.
if($key['flag'] == 'product')
{
$product .= $key['content'];
}
if($key['flag'] == 'orderid')
{
$orderid .= $key['content'];
}
}

// my variables from above in string format:




Вот запрошенный SQL

SELECT
cid,
model,
mfgr,
color,
orderid,
product,
flag
FROM products Inner Join bluas ON products.cid = bluas.cid
WHERE bluas.cid = 332
ORDER BY bluas.location ASC
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»