搜索多个表mysql

时间:2016-07-26 11:22:47

标签: php mysql

我有一个表Product和Classification以及一个连接表Product_Classification。我写了一个查询来搜索表格。我注意到的一件事是,如果我有一个未映射到分类的产品记录(或分类),查询将不会返回任何内容。如何以这样的方式更改我的查询:它还返回未映射分类的产品(以及未映射到产品的分类数据)。

$query = "Select *   from $dbname.Product P INNER JOIN Product_Classification PC ON P.ProductID = PC.ProductID INNER JOIN Classification C ON PC.ClassificationID = C.ClassificationID ";

编辑:我确实有一个Where条件,这是一个字段数组

2 个答案:

答案 0 :(得分:1)

您可以使用此查询

$query = "Select *   from $dbname.Product P LEFT JOIN Product_Classification PC ON P.ProductID = PC.ProductID LEFT JOIN Classification C ON PC.ClassificationID = C.ClassificationID ";

如果您想了解有关加入的更多信息,此链接可以帮助您https://stackoverflow.com/a/4715847/6098214

答案 1 :(得分:0)

使用此查询

Select *   from $dbname.Product P INNER JOIN Product_Classification PC ON P.ProductID = PC.ProductID LEFT JOIN Classification C ON PC.ClassificationID = C.ClassificationID