从两个表中获取结果

时间:2015-10-20 15:40:52

标签: mysql

我有两张桌子,我希望使用WHERE client=1234ORDER BY date ASC来显示内容。

docs_data_invoices i

id, date, client, invoice, amount

docs_data_payments p

id, date, client, currency, amount

结果必须如下:

i.date, i.invoice, i.amount, p.date, p.client, p.currency, p.amount

这就是我尝试过的:

SELECT i.date, i.invoice, i.amount, p.date, p.client, p.currency, p.amount FROM docs_data_invoices i JOIN docs_data_payments p ON i.client=p.client WHERE i.client=1234 ORDER BY i.date ASC

但它会返回奇怪的结果:

enter image description here

主要想法是查看按日期排序的所有发票和付款。

1 个答案:

答案 0 :(得分:0)

您无法获得所需的结果,因为您没有捕获必要的数据。客户应该对发票进行付款(因此付款表应该有发票ID的外键,但它没有。)

现在您可以确定的是,客户有发票并且客户已付款,但实际上没有理由加入这两个表。