2013-05-28 3 views
0

Я работаю над запросом для своего php-скрипта, и я не уверен, как делать то, что я хочу. Я ужасен с присоединениями, поэтому не знаю, как мне это нужно.Проблемы с MySQL-запросом

У меня есть два стола, предметы и категории.

Товары имеют recno, sku, описание, цена, марка, категория, детали, пол, размер, цвет, дата. Категории имеют recno, категорию, родитель.

Запрос мне нужно, необходимо выбрать элементы, чья категория X и чья категория родителем является X.

Я попытался

SELECT DISTINCT items.recno, 
       items.sku, 
       items.description, 
       items.price, 
       items.brand, 
       items.category, 
       items.details, 
       items.gender, 
       items.size, 
       items.color, 
       items.dateadded 
FROM `items` 
     INNER JOIN `categories` 
       ON items.category = categories.parent 
ORDER BY `description` 

, но это просто выбирает все. Я пытался использовать соединения, но никогда не мог захватывать элементы из дочерних категорий.

Любая помощь в этом была бы принята с благодарностью.

ответ

2

Пожалуйста, попробуйте следующее:

SELECT DISTINCT 
    items.recno, 
    items.sku, 
    items.description, 
    items.price, 
    items.brand, 
    items.category, 
    items.details, 
    items.gender, 
    items.size, 
    items.color, 
    items.dateadded 
FROM `items` 
JOIN `categories` ON items.category = categories.parent 
WHERE categories.category='x' AND categories.parent='X' 

вы не добавили условие WHERE в запросе, поэтому результат показывает все строки

+0

Это возвращает пустой результат. – sharf

+0

Что относительно WHERE categories.parent = 'X'? – Nisam

+0

Этот вид работ, но он выбирает только элементы этой категории, а не дочерние категории. – sharf

Смежные вопросы