mySQL-内部连接三个表

mySQL-内部连接三个表,mysql,Mysql,关于我数据库的最后一个问题。我有几种方法在我的数据库中为客户获取交易收据 customer_tbl - customer_ID PK transaction_tbl - customer_ID FK Payment_tbl - customer_id FK 不知您是否能提供帮助,在此基础上,我将添加游戏名称、租赁日期、归还日期和总付款?加入的形式应为: SELECT ... FROM customer_tbl c JOIN transaction_tbl t on c.customer_id

关于我数据库的最后一个问题。我有几种方法在我的数据库中为客户获取交易收据

customer_tbl - customer_ID PK
transaction_tbl - customer_ID FK
Payment_tbl - customer_id FK

不知您是否能提供帮助,在此基础上,我将添加游戏名称、租赁日期、归还日期和总付款?

加入的形式应为:

SELECT ... FROM customer_tbl c 
JOIN transaction_tbl t on c.customer_id = t.customer_id
JOIN Payment_tbl p ON t.payment_id = p.payment_id;
如果您想了解更多详细信息,您必须从您这边提供更多信息。

找到它:

SELECT t.* , p.* FROM transaction_tbl t INNER JOIN payment_tbl p 
ON p.payment_id = t.payment_id WHERE t.customer_id = 1;

这解决了我的交易报告。我

SELECT t.* , g.game_name , p.* 
FROM transaction_tbl t 
INNER JOIN game_tbl g ON g.game_id = t.game_id 
INNER JOIN payment_tbl p ON p.payment_id = t.payment_id 
WHERE t.customer_id = 1;

它适用于任何给定的客户(在本例中为“1”),并从事务和日期中选择FKs。在customer_tbl中,您只有customer_id(类似于您只获得忠诚卡号的商店)和payment_tbl中的付款详细信息。学到了很多东西,感谢大家的帮助。

到目前为止您都做了哪些尝试?添加更多信息-表格、查询、等客户信息(客户id、第一名、第二名)、交易信息(交易id、租赁日期、退货日期、游戏id FK、付款id FK、客户id FK)、付款信息(付款id、付款)。不会复制我的联接函数,因为它们都不起作用。我可以链接到表,但要与三个表进行斗争。正如您所看到的,交易tbl是连接客户、游戏和支付的主要交易。非常感谢您的帮助?几乎就在那里-上面显示了所有客户的所有交易,我需要每个客户。我有WHERE=customer\u id='1',但运气不好。我有这样一个选择:选择*从客户加入交易,在客户加入交易,客户id=交易,客户id加入付款,在交易,付款id=付款,付款id;正如我之前所说,它提供所有客户的所有记录。1.在第一个联接上,将条件设置为“在c.customer\u id=t.customer\u id和c.customer\u id='value'2上。在查询末尾添加其中customer_id='value'。你说你试了2次,但没有成功。您得到了什么结果?它对客户有效:选择*FROM customer\u tbl c JOIN transaction\u tbl t on c.customer\u id=t.customer\u id和c.customer\u id='1'JOIN Payment\u tbl p on t.Payment\u id=p.Payment\u id;现在我正在尝试使用事务tbl来链接客户、游戏和付款。我找到的代码是select*from transaction\u tbl t JOIN customer\u tbl c ON t.customer\u id=c.customer\u id和t.customer\u id='1'JOIN payment tbl p ON t.payment\u id=p.payment\u id;但是它不起作用吗?在您粘贴的代码中,付款tbl中缺少一个“u”。这只是粘贴错误吗?你说它不工作是什么意思?。你得到了什么结果或错误?修改和工作。在t.customer\u id=c.customer\u id和t.customer\u id='1'在t.payment\u id=p.payment\u id上从交易中选择*加入客户\u tbl c;它给了我所有的数据,但没有游戏名称?例如,它给出了customer_tbl的所有文件,并想知道我们是否可以只获得customer_id?虽然这段代码可以回答这个问题,但最好解释它如何解决问题以及为什么使用它。从长远来看,只使用代码的答案是没有用的。