SQL-запрос с JOIN и PIVOTPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 SQL-запрос с JOIN и PIVOT

Сообщение Anonymous »

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

Вот мои таблицы: p>

table_1

Код: Выделить всё

id | title         | description
-----------------------------------------------
1  | restaurant_1  | lorem ipsum
2  | restaurant_2  | lorem ipsum
3  | restaurant_3  | lorem ipsum
table_2

Код: Выделить всё

id | title    | description   | src
-----------------------------------------------
1  | image_1  | lorem ipsum   | url/
2  | image_2  | lorem ipsum   | url/
3  | image_3  | lorem ipsum   | url/
table_1_2

Код: Выделить всё

id | restaurant_id    | image_id
-----------------------------------------------
1  | 1                | 1
2  | 2                | 2
3  | 2                | 3
4  | 3                | 2
Я помещаю результат в массив и json_encode(array) с помощью PHP:

Код: Выделить всё

  $result = mysqli_query($link, $query);

// Add results to array
$restaurants = [];

while($result_arr = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($restaurants, $result_arr);
}

// close connection
mysqli_close($link);

// return json
echo json_encode($restaurants);
Тогда я ожидаю следующий результат:

Код: Выделить всё

restaurants = [{
'id': 1,
'title': 'restaurant_1'
'description': 'lorem ipsum'
'images': [{'id': 1, 'description': 'lorem ipsum', 'src': 'url/'}]
},{
'id': 2,
'title': 'restaurant_2'
'description': 'lorem ipsum'
'images': [{'id': 2, 'description': 'lorem ipsum', 'src': 'url/'},
{'id': 3, 'description': 'lorem ipsum', 'src': 'url/'}]
},{
'id': 3,
'title': 'restaurant_3'
'description': 'lorem ipsum'
'images': [{'id': 2, 'description': 'lorem ipsum', 'src': 'url/'}]
}];
Все мои попытки получить ожидаемые результаты возвращают мне пустой массив.

Надеюсь, у кого-нибудь из вас возникнет идея и он сможет помочь мне с этой проблемой.

Привет, Ларс< /п>

Подробнее здесь: https://stackoverflow.com/questions/422 ... -and-pivot
Ответить

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

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

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

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

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