Перейти к содержанию
Chenom0r

getProductSpecials - выбрать товары с количеством > 0

Рекомендуемые сообщения

Здравствуйте!

Помогите, пожалуйста. Как в методе getProductSpecials модуля specials выбрать товары в наличии?

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

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

написать свой метод

Или Допилить существующий

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Или Допилить существующий

 

Подскажите пожалуйста sql-запрос, который выберет товары с количеством >0

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
SELECT *
  FROM product_special ps
  WHERE ps.product_id = '30'
    AND (SELECT quantity
                FROM product p
                WHERE p.product_id = ps.product_id
                  AND quantity >0
             ) >1
ORDER BY ps.priority, ps.price

Надеюсь, остальное сделаете

 

 

Но может понадобится и такое

SELECT *, (SELECT  	quantity FROM " .   DB_PREFIX . "product p WHERE p.product_id = '" . (int)$product_id ." AND quantity > 0) as quantity
	FROM " . DB_PREFIX . "product_special  ps
	WHERE ps.product_id = '" . (int)$product_id . "' ORDER BY ps.priority, ps.price");


Внимание! Если у вас мултимагазин - работать не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно и так, но на ночь запрос с подзапросом отработал быстрее. Хотя по идее должно быть наоборот

SELECT ps.*
    FROM product_special  ps
INNER JOIN product p ON p.product_id = ps.product_id
    WHERE ps.product_id = '30'
            AND p.quantity > 0
ORDER BY ps.priority, ps.price

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.