2
基本上我有product
和几个model
s对于那些product
s。每个model
有一个price
。选择加入表中的最小值
这就是我打算做的事:
马克product
为功能,则有它的title
,description
,1对图像的thumbnail
和price
最便宜model
这是我现在的查询:
SELECT
product.title,
product.url_name,
product.description,
price.price,
image.thumbnail
FROM
mps_contents AS product
LEFT OUTER JOIN
mps_contents AS image
ON
image.page_id = product.content_id AND
image.display_order = '1' AND
image.resource_type = 'image'
LEFT OUTER JOIN
mps_contents AS model
ON
product.content_id = model.page_id
INNER JOIN
mps_product_info AS price
ON
model.content_id = price.content_id
WHERE
product.active = '1' AND
product.resource_type = 'product' AND
product.featured = '1'
ORDER BY RAND()
LIMIT 3
您可能会看到我的查询无法执行price
排序,我希望有人能帮助我。我遇到的另一个问题是,如果我有多个model
s,那么product
。当意图为每个product
具有1 price
时,我最终从单个product
获得具有price
s的集合,用于2 model
s。
我知道与ORDER BY RAND()
的问题,但我会忽略它,因为我不认为这个网站将有更多的50个产品。
语法错误主查询的'WHERE'发现之前。也许是因为'LEFT OUTER JOIN's不应该被这种别名?我通过将子查询移动到SELECT子句来修改查询。感谢子查询的想法! –