Laravel - 如何使用两个表而不是连接表循环内部循环

时间:2017-01-05 07:37:19

标签: php mysql laravel

我知道这是一个愚蠢的问题,但我希望有人能够善待并希望分享他们的知识并帮助解决我的问题。

我有一张这样的表

(项目表)

+---------+-------+-------+-----------+
| item_id | stock | price | name      |
+---------+-------+-------+-----------+
| 1       | 10    | 9.4   | Paper     |
+---------+-------+-------+-----------+
| 2       | 10    | 12.8  | Pencil    |
+---------+-------+-------+-----------+
| 3       | 10    | 99.9  | Note Book |
+---------+-------+-------+-----------+
| 4       | 10    | 4.5   | Pen       |
+---------+-------+-------+-----------+

然后我有另一张这样的表

(购买请求明细表)

+---------------+-------+---------+-----+
| pr_details_id | pr_id | item_id | qty |
+---------------+-------+---------+-----+
| 1             | 1     | 1       | 1   |
+---------------+-------+---------+-----+
| 2             | 1     | 2       | 2   |
+---------------+-------+---------+-----+
| 3             | 1     | 3       | 1   |
+---------------+-------+---------+-----+
| 4             | 2     | 3       | 1   |
+---------------+-------+---------+-----+

然后我想循环表项并在items表中插入pr_qty和subtotal,就像这样

- PR No.1

+---------+-------+-----------+-----+----------+
| item_id | price | name      | qty | subtotal |
+---------+-------+-----------+-----+----------+
| 1       | 9.4   | Paper     | 1   | 9.4      |
+---------+-------+-----------+-----+----------+
| 2       | 12.8  | Pencil    | 2   | 25.6     |
+---------+-------+-----------+-----+----------+
| 3       | 99.9  | Note Book | 1   | 99.9     |
+---------+-------+-----------+-----+----------+
| 4       | 4.5   | Pen       | 0   | 0        |
+---------+-------+-----------+-----+----------+

- PR No.2

+---------+-------+-----------+-----+----------+
| item_id | price | name      | qty | subtotal |
+---------+-------+-----------+-----+----------+
| 1       | 9.4   | Paper     | 0   | 0        |
+---------+-------+-----------+-----+----------+
| 2       | 12.8  | Pencil    | 0   | 0        |
+---------+-------+-----------+-----+----------+
| 3       | 99.9  | Note Book | 1   | 99.9     |
+---------+-------+-----------+-----+----------+
| 4       | 4.5   | Pen       | 0   | 0        |
+---------+-------+-----------+-----+----------+

我不知道如何制作这个,有人请帮助我,抱歉英语不好,谢谢你的回答 如果您不介意,请给我一个Laravel脚本:)

2 个答案:

答案 0 :(得分:0)

使用laravel的orm搜索表格。但我想如果你想要完全像那样的产品。 你将使用sql连接。  DB :: select('从我离开的项目中选择i.id,i.name,i.price,在i.id = pr.item_id'上加入purchase_details pr);

或者你需要阅读laravel的雄辩来阅读表格。

答案 1 :(得分:0)

轻松查询!它会是这样的(只是按照想法语法可能不准确,因为这里的情况不明确)

Update purchase_table SET subtotal=pur.qty*itm.price
FROM purchase_table pur INNER JOIN items itm ON itm.item_id=pur.item_id