你好,有人可以告诉我如何解决这个问题吗?举例来说,我有两个表“sales”和“rsales”。我的表中有这个 ff 数据。
销售数据
receipt | date | total | 1st_id | last_id |
129999 | 09/26/2013 | 1220 | 1 | 2 |
139999 | 09/27/2013 | 2320 | 3 | 4 |
data from rsales
id | product_name |
1 | 33uf |
2 | 44uf |
3 | 7sss |
4 | 8sss |
这是我在做报告时从网页上看到的 View
receipt | date | total | 1st_id | last_id | + |
129999 | 09/26/2013 | 1220 | 1 | 2 | + |
139999 | 09/27/2013 | 2320 | 3 | 4 | + |
所以就在这里。我的问题是,当我单击“+”时,它将从 rsales 中选择数据,然后显示。假设我点击“+”,收据是 129999 。所以预期的输出一定是这样的。
receipt | date | total | 1st_id | last_id | + |
129999 | 09/26/2013 | 1220 | 1 | 2 | + |
id | product_name |
1 | 33uf |
2 | 44uf |
139999 | 09/27/2013 | 2320 | 3 | 4 | + |
那为什么会这样显示呢?这是因为 sales 中的 1st_id 和 last_id = rsales 中的 id 1 和 2。这很难解释,但我认为我给出的例子足以理解我想要做什么。希望你的想法。我真的需要想法。
最佳答案
如果您按照我认为的方式进行设置,则需要两个查询:
SELECT 1st_id, last_id FROM sales WHERE receipt=?
然后
SELECT Id, product_name FROM rsales WHERE Id>=[variable from 1st_id] AND Id<=[variable from last_id];
如果我这样做,我会设置 3 张 table
具有 3 个字段的 sales_rsales,id、sales_receipt、rsales_id。去掉 1st_id 和 last_id,使用它来跟踪每个收据的产品,然后 SQL 将很容易:
SELECT rsales.Id, rsales.product
FROM rsales JOIN sales_rsales ON rsales.Id=sales_rsales.rsales_id
JOIN sales ON sales.receipt=sales_rsales.sales_receipt
WHERE sales.receipt=?
关于php - 单击 "show"时显示详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19032087/