2013-09-26 105 views
0

你好,有人可以给我想法如何做到这一点?比方说,例如我有两个表“销售”和“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  | 

,这是从我的网页,我的观点

数据时做报告

receipt | date  | total | 1st_id | last_id | + | 
129999 | 09/26/2013 | 1220 | 1 | 2  | + | 
139999 | 09/27/2013 | 2320 | 3 | 4  | + | 

所以在这儿呢。我的问题是,当我点击“+”时,它会从rsales中选择数据,然后显示。所以让我说我cllick“+”收据是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  | + | 

那么它为什么显示这样?这是因为来自销售额的1st_id和last_id =来自rsales的id 1和2。这很难解释,但我认为我给出的例子足以理解我想要做什么。希望你的想法。我真的需要主意。

+2

你有什么试过?一些示例PHP代码将是一个很好的开始。 – tadman

+0

我只是在我的页面上有一个完整的运行报告。但我想要的是,我想显示我的页面作为预期的输出上面给出的。 – user2656724

+0

你在问怎么写SQL选择?或者如何格式化表格数据? –

回答

1

如果您有它设置,我认为你有它设置你需要两个查询方式:

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个表格

带有3个字段,id,sales_receipt,rsales_id的sales_rsales获取使用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=? 
+1

将代码添加到您的问题或答案中时,请使用四个空格缩进适当的格式,或选择它并使用'{}'按钮自动执行。 – tadman