内部联接查询显示 0 个结果
Inner join query is showng 0 results
我遇到了 OpenCart (v: 3.0.3.7) 查询的奇怪问题。我正在尝试使用 Inner Join
提取产品和 product_descrition table 数据,但结果为 0。如果我使用 Left Join
而不是 Inner Join
,则此查询工作正常。查询还显示 product_id 的结果,但 pd.name.
中的值为空值
注意:当我 运行 直接在 phpMyAdmin
中查找时,相同的查询正在运行
SELECT p.product_id, pd.name
FROM oc_product p
Inner JOIN oc_product_description pd ON (p.product_id = pd.product_id) AND ( pd.name LIKE "%test%") AND p.manufacturer_id = "14"
GROUP BY p.product_id
ORDER BY p.product_id ASC
为什么需要 INNER JOUN
?使用 LEFT JOIN
...
你可以试试这个...
SELECT DISTINCT * FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' GROUP BY p.product_id ORDER BY p.product_id ASC
我遇到了 OpenCart (v: 3.0.3.7) 查询的奇怪问题。我正在尝试使用 Inner Join
提取产品和 product_descrition table 数据,但结果为 0。如果我使用 Left Join
而不是 Inner Join
,则此查询工作正常。查询还显示 product_id 的结果,但 pd.name.
注意:当我 运行 直接在 phpMyAdmin
中查找时,相同的查询正在运行SELECT p.product_id, pd.name
FROM oc_product p
Inner JOIN oc_product_description pd ON (p.product_id = pd.product_id) AND ( pd.name LIKE "%test%") AND p.manufacturer_id = "14"
GROUP BY p.product_id
ORDER BY p.product_id ASC
为什么需要 INNER JOUN
?使用 LEFT JOIN
...
你可以试试这个...
SELECT DISTINCT * FROM oc_product p LEFT JOIN oc_product_description pd ON (p.product_id = pd.product_id) AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' GROUP BY p.product_id ORDER BY p.product_id ASC