2015-08-24 42 views
0

我對此查詢有問題。我認爲問題在於沒有找到items。之後,我正在做LEFT OUTER JOIN,但在此之前什麼都沒有。在開始時包含項目表的最佳解決方案是什麼?SQL:未知列'items.id'關係查詢

SELECT COUNT(*) AS `numrows` FROM (`categories_items`) 
LEFT OUTER JOIN `items_stones` `items_stones` ON `items`.`id` = `items_stones`.`item_model_id` 
LEFT OUTER JOIN `items` ON `items`.`id` = `categories_items`.`item_model_id` 
WHERE (`items_stones`.`stone_model_id` = 1) AND `categories_items`.`category_model_id` = 1 

回答

1

更改您的查詢,像下面,基本上交換LEFT JOINS

SELECT COUNT(*) AS `numrows` 
    FROM `categories_items` 
    LEFT OUTER JOIN `items` ON `items`.`id` = `categories_items`.`item_model_id` 
    AND `categories_items`.`category_model_id` = 1 
    LEFT OUTER JOIN `items_stones` ON `items`.`id` = `items_stones`.`item_model_id` 
AND `items_stones`.`stone_model_id` = 1;