Mysql 使用php的3个表之间的关系
我需要在3个表之间创建一个关系。我正在创建一个会员区,在这里我需要向登录用户显示他购买的课程。这三个表是:Mysql 使用php的3个表之间的关系,mysql,Mysql,我需要在3个表之间创建一个关系。我正在创建一个会员区,在这里我需要向登录用户显示他购买的课程。这三个表是:用户,产品,购买 Users columns: id, name, email, password Products columns: id, code, name, image, link Purchases columns: id, code, email, value, date 我通过一个界面注册产品,然后通过webhook获得购买信息。也就是说,我注册的产品与我从webhoo
用户
,产品
,购买
Users columns: id, name, email, password
Products columns: id, code, name, image, link
Purchases columns: id, code, email, value, date
我通过一个界面注册产品,然后通过webhook获得购买信息。也就是说,我注册的产品与我从webhook收到的代码相同
我需要知道登录用户是否购买了我系统上的课程,并向他展示。那么您是在寻找表之间唯一键和/或索引的连接 我假设:
- ID是每个表的主键;然而,您正在使用唯一的索引来关联它们李>
- Useres.email是唯一的密钥李>
- Product.code是唯一的密钥
- Purchases是一个连接表,显示哪些用户(电子邮件)购买了哪些产品(代码)
- 您正在进行的查询显示登录用户的产品名称、图像和链接以及用户名和电子邮件
- 购买意味着完全出售;不仅仅是购物车/愿望清单。在处理订单系统时,我们通常会看到订单、订单细节、装运、发票、付款等
那你有什么<代码>发货/
采购
/课程
.?“电子表格是:用户、产品、采购。”然后是“用户产品采购”是用户还是用户、产品还是产品、采购还是购物?在“采购”下有一个产品代码列表列和一个用户ID列,然后用登录用户的ID检查购买表,以获得他购买的每一种产品。您需要进一步了解关联表和规范化数据库表。也许可以在众多免费网站中的一个上SQL课程。这里有更多的信息,特别是你要寻找的:可能重复的
SELECT PR.Name as ProductName, PR.Image, PR.Link, U.Name as userName U.Email
FROM users U
INNER JOIN Purchases PU
on PU.eMail = U.eMail
INNER JOIN Products PR
on PR.Code = PU.Code
WHERE U.ID = {logged in user ID}