SELECT * FROM `tbl_wines`
LEFT JOIN `tbl_wines_attrib`
ON `tbl_wines`.`intWinesID` = `tbl_wines_attrib`.`intWinesID`
AND `tbl_wines_attrib`.`intAttributeValueId` = 4
WHERE `intStatus` = 1
LIMIT 0 , 20
我需要知道这个问题是否正确。但是我从
tbl_wines
中获取所有值,而不仅仅是intAttributeValueId = 4
中的值。有人能帮忙吗?
最佳答案
看起来这个条件已经作为JOIN
条件的一部分而不是WHERE
条件放置。相反,请尝试以下操作,将tbl_wines_attrib.intAttributeValueId =4
移到WHERE
子句中。
SELECT * FROM `tbl_wines` LEFT JOIN `tbl_wines_attrib` ON `tbl_wines`.`intWinesID` = `tbl_wines_attrib`.`intWinesID` WHERE `tbl_wines_attrib`.`intAttributeValueId` = 4 AND `intStatus` =1 LIMIT 0 , 20
关于mysql - 从数据库显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7093391/