我想獲得按產品分組的多維數組。Codeigniter:創建結果的多維數組
這裏是sql
,我曾嘗試:
$sql = "SELECT * from order_detail OD\n"
. "LEFT JOIN product as pro ON pro.product_id = OD.product_id\n"
. " LEFT JOIN `order` as o ON o.order_id = OD.order_id \n"
. "WHERE OD.order_id IN (1,4) AND OD.user_id =2\n"
. "group by OD.product_id\n"
. "order By OD.Product_ID, OD.Order_ID";
這個SQL給出以下結果:
Array
(
[0] => Array
(
[order_detail_id] => 1
[user_id] => 2
[order_id] => 1
[product_id] => 13
[product_name] => Prodict Test
)
[1] => Array
(
[order_detail_id] => 2
[user_id] => 2
[order_id] => 1
[product_id] => 12
[product_name] => Product One
)
[2] => Array
(
[order_detail_id] => 3
[user_id] => 2
[order_id] => 1
[product_id] => 11
[product_name] => Fodod
)
[3] => Array
(
[order_detail_id] => 34
[user_id] => 2
[order_id] => 4
[product_id] => 13
[product_name] => Prodict Test
)
[4] => Array
(
[order_detail_id] => 35
[user_id] => 2
[order_id] => 4
[product_id] => 12
[product_name] => Product One1
)
[5] => Array
(
[order_detail_id] => 36
[user_id] => 2
[order_id] => 4
[product_id] => 11
[product_name] => Fodod
)
)
,這是strecture我想:
Array
(
[0] => Array
(
[product_id] => 13
[product_name] => Prodict Test
['order'] => Array
(
[0] => Array
(
[order_detail_id] => 1
[user_id] => 2
[order_id] => 1
)
[1] => Array
(
[order_detail_id] => 34
[user_id] => 2
[order_id] => 4
)
)
)
[1] => Array
(
[product_id] => 12
[product_name] => Product One
['order'] => Array
(
[0] => Array(
[order_detail_id] => 2
[user_id] => 2
[order_id] => 1
)
[0] => Array(
[order_detail_id] => 35
[user_id] => 2
[order_id] => 4
)
)
)
)
任何人都可以給我建議我如何完成它?
這裏是我的表strecture
順序表
+----------+---------+------------+
| order_id | user_id | invoice_no |
+----------+---------+------------+
| 1 | 2 | INV-1 |
| 2 | 3 | INV-2 |
| 3 | 5 | INV-3 |
| 4 | 2 | INV-4 |
| 5 | 5 | INV-5 |
| 6 | 3 | INV-6 |
+----------+---------+------------+
order_detail表
+-----------------+---------+----------+------------+
| order_detail_id | user_id | order_id | product_id |
+-----------------+---------+----------+------------+
| 1 | 2 | 1 | 13 |
| 2 | 2 | 1 | 12 |
| 3 | 2 | 1 | 11 |
| 4 | 2 | 1 | 9 |
| 5 | 2 | 1 | 8 |
| 6 | 2 | 1 | 7 |
| 7 | 2 | 1 | 6 |
| 34 | 2 | 4 | 13 |
| 35 | 2 | 4 | 12 |
| 36 | 2 | 4 | 11 |
| 37 | 2 | 4 | 9 |
+-----------------+---------+----------+------------+
prodcut表
+------------+---------------+
| product_id | product_name |
+------------+---------------+
| 1 | Product One |
| 2 | Product Two |
| 3 | Product Three |
| 4 | Product Four |
| 5 | Product Five |
| 6 | Product Six |
| 7 | Fodod |
| 8 | Pepsi |
| 9 | Product Onea |
| 10 | Fodod |
| 11 | Fodod |
| 12 | Product One1 |
| 13 | Prodict Test |
+------------+---------------+
注:我曾嘗試以下兩種解決方案的形式計算器問題,但沒有奏效形成我
爲什麼要使用泛型sql?我認爲CI具有MVC支持,您是否使用(相關)模型用於表格? – 2015-03-19 07:38:30