我想加入一些表格,下面的布局示例如下:
命令
user_id=7 pricing id=37
Run Code Online (Sandbox Code Playgroud)
products_pricing
id=37 product_id=33
Run Code Online (Sandbox Code Playgroud)
制品
id=33 name=test product
Run Code Online (Sandbox Code Playgroud)
SQL
SELECT *
FROM orders
INNER JOIN products_pricing
ON orders.pricing_id = products_pricing.id
INNER JOIN products
ON products_pricing.product_id = products.id
WHERE orders.user_id = '7' ");
Run Code Online (Sandbox Code Playgroud)
上市
id=233 user_id=7 url=test.com
Run Code Online (Sandbox Code Playgroud)
使用这个SQL我得到一个输出,给我user_id为7的所有产品,它将在while循环中列出每个产品名称.然而,当我为一个名为listing的表添加另一个INNER JOIN时,它有一个user_id列,我需要为匹配的每一行抓取一个url,所以我可以用url超链接产品名称,我也可以获得列表中包含的所有内容作为上面的工作内容.我要么做得非常错,要么错过了什么.我花了几个小时试图找出它,但一直得到相同的结果.谁能帮我吗?
Mah*_*mal 23
试试这个:
SELECT
p.id,
p.name,
l.url,
o.user_id,
o.pricing_id
FROM orders AS o
INNER JOIN products_pricing AS pp ON o.pricing_id = pp.id
INNER JOIN products AS p ON pp.product_id = p.id
INNER JOIN listings AS l ON l.user_id = o.user_id
WHERE o.user_id ='7'
AND l.id = 233
AND l.url = 'test.com';
Run Code Online (Sandbox Code Playgroud)
对于您在问题中发布的示例数据,这将为您提供:
| ID | NAME | URL | USER_ID | PRICING_ID |
------------------------------------------------------
| 33 | testproduct | test.com | 7 | 37 |
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
75393 次 |
| 最近记录: |