SQL Split Comma Spired от одной таблицы и контента печати из второй таблицы на основе этого спискаPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 SQL Split Comma Spired от одной таблицы и контента печати из второй таблицы на основе этого списка

Сообщение Anonymous »

У меня есть две таблицы, комнаты и утилиты .
В таблице с именем комнаты , у меня есть столбец с названием утилиты . В этом столбце хранится запятые номера, ссылающиеся на идентификаторы от утилиты таблицы .
Как я могу разделить (взрываться?) rooms



ID
Name
Utilities

< /thead>


1 < /td>
Room1 < /td>
1,3,4 < /td>
< /tr>
< /tbody>
< /td>
< /tr>
< /tbody> < /> < /> < /br />
< /tbody> < /br /> < /td. utilities



ID
Device




1 < /td>
динамики < /td>
< /tr>

2 < /td>
tv < /td>





/>3
Smart TV


4
Web camera


< /table> < /div>
Я хочу распечатать что -то вроде этого: < /p>
Room1: Speakers, Smart TV, Web camera

Вот что у меня есть до сих пор, confroomreport.php :




Room
Utilities




и в db.php
public function getDeviceList()
{
$arr = array();
$statement = $this->conn->prepare("SELECT id, device from utilities order by device ASC");
$statement->bind_result($id, $device);
$statement->execute();
while ($statement->fetch()) {
$arr[] = [ "id" => $id, "device" => $device];
}
$statement->close();

return $arr;
}

public function getConfRoomList()
{
$arr = array();
$statement = $this->conn->prepare("SELECT id, name, utilities from rooms order by name ASC");
$statement->bind_result($id, $name, $utilities);
$statement->execute();
while ($statement->fetch()) {
$arr[] = [ "id" => $id, "name" => $name, "utilities" => $utilities];
}
$statement->close();

return $arr;
}

edit : обновленный код на основе принятого решения. public function joinDevRoom()
{
$arr = array();
$statement = $this->conn->prepare("SELECT r.name,GROUP_CONCAT(u.device) FROM room r LEFT JOIN utilities u ON FIND_IN_SET(u.id,r.utilities)>0 GROUP BY r.id");
$statement->bind_result($id, $utilities);
$statement->execute();
while ($statement->fetch()) {
$arr[] = [ "id" => $id, "utilities" => $utilities];
}
$statement->close();

return $arr;
}

И это мой обновленная конфликт.



Room
Utilities





Подробнее здесь: https://stackoverflow.com/questions/503 ... econd-tabl
Ответить

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

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

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

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

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