Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Запрос в MySQL


Recommended Posts

SELECT
    p.product_id,
    sku,
    model,
    CAST(`price` AS CHAR),
    cd.name,
    quantity
FROM oc_product p
LEFT JOIN oc_product_to_category pc ON (pc.product_id = p.product_id && pc.main_category=1)
LEFT JOIN oc_category_description cd ON (cd.category_id = pc.category_id && cd.language_id=1)

 

Змінено користувачем n3bo
  • +1 1
Надіслати
Поділитися на інших сайтах


23 минуты назад, n3bo сказал:

SELECT
    p.product_id,
    sku,
    model,
    CAST(`price` AS CHAR),
    cd.name,
    quantity
FROM oc_product p
LEFT JOIN oc_product_to_category pc ON (pc.product_id = p.product_id && pc.main_category=1)
LEFT JOIN oc_category_description cd ON (cd.category_id = pc.category_id && cd.language_id=1)

 

опять же!!! только главная!!!!

Надіслати
Поділитися на інших сайтах

SELECT
    p.product_id,
    sku,
    model,
    CAST(`price` AS CHAR),
    cd.name,
    quantity
FROM oc_product p
LEFT JOIN oc_product_to_category pc ON (pc.product_id = p.product_id && pc.main_category=0)
LEFT JOIN oc_category_description cd ON (cd.category_id = pc.category_id && cd.language_id=1)

Вот то что нужно. А если еще добавить рядом колонку с главной категорией, опять через левое соединение маслать? 

LEFT JOIN oc_product_to_category gk ON (gk.product_id = p.product_id && gk.main_category=0)   ???

Змінено користувачем mario512
Надіслати
Поділитися на інших сайтах

4 минуты назад, chukcha сказал:

Зачем?

 

у вас таблица уже присоединена

 

SELECT .., ,,,, IF (maincategoty =1.'главная','не главная')

Не совсем понял куда это пихать?

Надіслати
Поділитися на інших сайтах

8 минут назад, chukcha сказал:

 && pc.main_category=0

Да уберите к ххх

Убрал. Строки дублируются. Первая строка с главной, вторая с категорией. Вот бы рядом их... главную в соседнем столбике)))

Надіслати
Поділитися на інших сайтах

SELECT
    p.product_id,
    sku,
    model,
    CAST(`price` AS CHAR),
    cd.name IF(pc.main_category = 1, 0, 1),
    quantity
FROM
    oc_product p
LEFT JOIN oc_product_to_category pc ON
    (pc.product_id = p.product_id)
LEFT JOIN oc_category_description cd ON
    (
        cd.category_id = pc.category_id && cd.language_id = 1
    )

Не работает)))

Надіслати
Поділитися на інших сайтах

Как вы думаете, зачем я добавил конструкцию if

 

И вы допустили ошибку в запросе, и с чего он должен работать?

И.. Я условно показал

Или вам надо разжевать?

Надіслати
Поділитися на інших сайтах

27 минут назад, chukcha сказал:

Как вы думаете, зачем я добавил конструкцию if

 

И вы допустили ошибку в запросе, и с чего он должен работать?

И.. Я условно показал

Или вам надо разжевать?

Был бы очень благодарен! 

Надіслати
Поділитися на інших сайтах

И так не работает:

SELECT
    p.product_id,
    sku,
    model,
    CAST(`price` AS CHAR),
    IF(
        pc.main_category = 1,
        cd.name,
        NULL
    ) AS category,
    quantity
FROM
    oc_product p
LEFT JOIN oc_product_to_category pc ON
    (pc.product_id = p.product_id)
LEFT JOIN oc_category_description cd ON
    (
        cd.category_id = pc.category_id && cd.language_id = 1
    )
    WHERE cd.name IS NOT null

 

Надіслати
Поділитися на інших сайтах

Я надеялся таким образом убрать строки со значение NULL в столбике cd.name

Змінено користувачем mario512
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.