php - 遍历4个表时数据不一致

标签 php mysql codeigniter model

我正在使用 4 个表(有很多字段,但每个表中只有几个重要的字段)。

  1. 客户表
  2. 库存表
  3. 发票表
  4. 发票明细表

我一直在做的是获取客户或商品的 ID。

如果是客户,我会使用他们的 ID 从客户表中获取他们的信息。现在,为了获取他们携带的元素,我必须查看带有该客户 ID 的每张发票。所以我捕获了所有这些。每张发票都有链接到发票详细信息表的 ID,因此我获取该发票 ID 并获取与发票匹配的发票详细信息。然后,这些商品位于 iteminventory 表中,因此我从发票详细信息中获取商品 ID,并获取与该客户关联的每张发票的所有商品。然后我通过循环运行该数据以消除任何空值并将项目数组传递到 View 。

现在,如果它是一个项目,则执行的操作反之亦然。我拿起该元素,查看包含该酒的每张发票详细信息,从中获取发票 ID,并分别从每张发票中获取客户 ID。

不知何故,我最终发现客户携带了产品,但是当我转到该产品以查看哪些客户携带该产品时,前面提到的客户不会列在该产品下。

有更简单的方法吗?

最佳答案

大多数 SQL 程序员使用一系列 JOIN 指令和适当的 ORDER BY 指令通过单个查询来解决此类问题。他们编写了一些 PHP 代码来逐行读取结果集,检测发票 ID 更改的行,并适本地格式化信息。

如果您还不知道如何使用 JOIN 指令,那么阅读一下似乎是个好主意。

关于php - 遍历4个表时数据不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24224895/

相关文章:

php - Codeigniter 返回空结果集,但返回 num_rows(5)

php - HTML5 websockets vs PHP websockets vs node.js websockets?

php - wordpress 创建包含多个条目的元框

php - 使用 Inner Join MySQL php 从 3 个表中获取数据

php - Jquery插入两次到mysql

php - 使用 MySql 和 PHP 时获取记录集中最后一条记录的值

mysql - 为MySQL中的每一行设置ID

php - 如何将多个mysql查询组合成一个查询

php - 我应该将 .pem 文件放在 codeigniter 的什么位置以发送 Apple 推送通知?

php - codeigniter 中的浏览器缓存问题