我有4张桌子,但不记得如何进行此查询。
4个表格是产品,发票,产品发票和会员
我想显示用户购买的所有产品。
以下是我的数据。
products
productID, title, runTime, imageLarge, classification
1, noah, 128 minutes, noahLarge.jpg, M
2, left behind, 105 minutes, leftBehindLarge.jpg, MA 15+
3, green lantern, 133 minutes, greenLantern.jpg, M
invoice
invoiceID, memberID, purchaseDate
1,11,1/10/2014
2,13,15/10/2014
productsinvoice
invoiceID, productID
1, 2
1, 3
2, 1
2, 2'
members
memberID, username, pass, first name, last name
11, bob, fwofefef, bob, marley
13, prius, f334ff43f, eski, martey
当用户访问帐户页面时,我想显示他们购买的所有产品。如果有人需要,我可以从localhost导出sql文件。
$sql = "select P.*
from products as P
inner join productsinvoice as PI using (productID)
inner join invoice as I using (invoiceID)
where I.memberID = ".$_SESSION['user'].">";
回来你的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以获得在''附近使用的正确语法。在第1行
$ _ SESSION [' user']是memberID
答案 0 :(得分:0)
select P.*
from products as P
inner join productsinvoice as PI using (productID)
inner join invoice as I using (invoiceID)
where I.memberID = <memberID which may be stored in session when member logs in>
我没有看到加入会员表的理由,因为memberID
通常只是你需要的,这是invoices
表的一部分。