Есть 2 таблицы
таблица 1
| id | name |
| 1 | имя 1 |
| 2 | имя 2 |
| 3 | имя 3 |
| 4 | имя 4 |
таблица 2
| id | id_tab1 | name |
| 1 | 1 | имя 1 |
| 2 | 2 | имя 2 |
| 3 | 2 | имя 3 |
| 4 | 3 | имя 4 |
Как с помощью одной выборки получить массив
Array
(
[id] => 1
[id_tab1] => Array
(
[0] => 1
)
)
Array
(
[id] => 2
[id_tab1] => Array
(
[0] => 2
[1] => 3
)
)
Array
(
[id] => 3
[id_tab1] => Array
(
[0] => 4
)
)
Подскажите кто знает.
1. potap1986 - 19 Октября, 2012 - 02:17:09 - перейти к сообщению
2. Мелкий - 19 Октября, 2012 - 09:26:22 - перейти к сообщению
MySQL не может вернуть нативно массив, поэтому одной только выборкой дело не ограничится.
CODE (SQL):
скопировать код в буфер обмена
скопировать код в буфер обмена
- SELECT t1.id, group_concat(t2.id_tab1) AS t2ids FROM t2 JOIN t1 ON t1.id=t2.id_tab1 GROUP BY t1.id
И explode по t2ids.