我有一个小问题无法解决。我有三个表,SELECT
如以下代码所示:
SELECT p.*, c.*, i.*
FROM produto p, categoria c, imagem i
WHERE p.categoria_id = c.categoria_id
AND p.produto_id = i.produto_id
GROUP BY(p.produto_id)
产品 (produto
) 可以具有表格图像 (imagem
) 中的无限图像,并且我只想列出仅具有一张图像(不同图像)的产品。我想要的图像位于表 images(imagem
) 的 image_order(imagem_ordem
) 列中,其中有一个顺序,例如 1、2、3 等。
我想选择 1 (ONE) 或更接近的订单。我尝试输入ORDER BY i.imagem_ordem
,但它不起作用。我相信这可以是一个 JOIN
方法。
最佳答案
我不确定我是否理解您想要什么,但此查询将返回带有一张图像的所有产品
SELECT p.*, c.*, i.*
FROM produto p, categoria c, imagem i
WHERE p.categoria_id = c.categoria_id
AND p.produto_id = i.produto_id
GROUP BY(p.produto_id)
HAVING COUNT(i.*)=1
关于php - 选择三个表按特定表排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20666829/