【发布时间】:2014-04-25 00:15:54
【问题描述】:
我有一张订单表 (tbl_orders)。
+------------------------------------------------+
|invoice | productid | qty | currentPrice |
+------------------------------------------------+
|139813018020 | 35 | 4 | 199 |
|139813018020 | 43 | 1 | 329 |
|139813307433 | 22 | 4 | 399 |
|139813307433 | 15 | 1 | 150 |
|139813307477 | 63 | 1 | 499 |
+------------------------------------------------+
每一行将代表一个产品。 一个订单可能有一行或多行。
例如。发票139813018020 有 2 种不同的产品。 Product35 和 product43,它们是两行。这是一个完整的订单
我正在使用这样的查询:
SELECT invoice, productID, qty, currentPrice FROM tbl_orders
return $query->result_array() // codeigniter
输出如下:
Array
(
[0] => Array
(
[invoice] => 139813018020
[productID] => 35
[qty] => 4
[currentPrice] => 199
)
[1] => Array
(
[invoice] => 139813018020
[productID] => 43
[qty] => 1
[currentPrice] => 329
)
[2] => Array
(
[invoice] => 139813307433
[productID] => 22
[qty] => 4
[currentPrice] => 399
)
[3] => Array
(
[invoice] => 139813307433
[productID] => 15
[qty] => 1
[currentPrice] => 150
)
[4] => Array
(
[invoice] => 139813307477
[productID] => 63
[qty] => 1
[currentPrice] => 499
)
)
我需要一个订单和该订单的产品
我需要数组看起来像这样或类似的东西:
Array
(
[0] => Array
(
139813018020 => Array
(
[0] => Array
(
[productID] => 35
[qty] => 4
[currentPrice] => 199
)
[1] => Array
(
[productID] => 43
[qty] => 1
[currentPrice] => 329
)
)
)
[1] => Array
(
139813018033 => Array
(
[0] => Array
(
[productID] => 22
[qty] => 4
[currentPrice] => 399
)
[1] => Array
(
[productID] => 15
[qty] => 1
[currentPrice] => 150
)
)
)
[2] => Array
(
139813018077 => Array
(
[0] => Array
(
[productID] => 63
[qty] => 1
[currentPrice] => 499
)
)
)
)
我正在使用 php、mysqli 和 codeigniter。
【问题讨论】:
-
我会选择不同的发票编号,然后循环遍历结果数组并查询产品 ID、数量和价格以获取一个发票编号
标签: php mysql sql arrays codeigniter