d0tb0t Posted March 3, 2018 Share Posted March 3, 2018 (edited) Дано: Opencart, один товар штаны. Опция размер: - M - 5 штук - XL - 5 штук Опция цвет: - белый - 3 штук - чёрный - 7 штук Как sql-запросом посчитать количество штанов белого цвета, размера XL Edited March 3, 2018 by d0tb0t Link to comment Share on other sites More sharing options...
krumax Posted March 3, 2018 Share Posted March 3, 2018 (edited) В обычном варианте никак, поскольку опции никоим образом не связанны друг с другом. То есть, универсального решения не получится сделать. P.S. Есть модуль Связанные опции, где этот вопрос решён Edited March 3, 2018 by krumax Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 11 минут назад, krumax сказал: В обычном варианте никак, поскольку опции никоим образом не связанны друг с другом. То есть, универсального решения не получится сделать. Как с этим жить? Как на этом можно интеграцию со складом делать? Про модуль "связные опции" я в курсе. Это как минимум лишняя прослойка. Интересует живой опыт. Link to comment Share on other sites More sharing options...
Guest Posted March 3, 2018 Share Posted March 3, 2018 Точно не уверен, не проверял! SELECT count(*) FROM `oc_product_option_value` WHERE product_id = '42' AND option_id = 5 AND option_value_id = ('40,41') То есть вместо 40 и 41 ставите id цвета и размера. Повторюсь, не проверял! Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 (edited) 38 минут назад, Designer сказал: Запрос указанный выше можете даже не проверять, он не рабочий. Вы тестовые данные подставили? У вас ответ какой получился? Edited March 3, 2018 by d0tb0t Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 1 час назад, Designer сказал: нет, сами тестируйте Запрос выдаёт 1 или 0 при любом сочетании option_id и option_value_id Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 (edited) 22 минуты назад, Designer сказал: Как я понял, есть товар 1 - опция: Белый - 5 шт, опция XL - 3 шт, нужно посчитать их общее кол-во, т.е 8 шт должно быть в результате? Или же есть 5 товарв с такими опциями и нужно посчитать именно, сколько еще товаров есть в базе с такими параметрами? У меня на складе штаны 2х размеров и 2х цветов, в произвольной комбинации, в общем 10 штук Из них 5 размера XL и 5 размера M, 3 белого, 7 чёрного Заношу это в базу опенкарта штатными средствами, одним товаром с опциями, чтобы получить переключатели опций. Как теперь из базы получить количество штанов белого цвета, размера XL Edited March 3, 2018 by d0tb0t Link to comment Share on other sites More sharing options...
thentru Posted March 3, 2018 Share Posted March 3, 2018 вам выше написали, что никак у вас должен учитываться остаток по связке опций цвет-размер Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 3 минуты назад, thentru сказал: вам выше написали, что никак у вас должен учитываться остаток по связке опций цвет-размер Отлично. Я догадывался, но было подозрение что математику плохо знаю. Как с этим жить? Как со складом, CRM интеграцию делать? там везде SKU. Таблица посредник (Связные опции), изменение модели для вариантов. Прошу поделится опытом. Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 @Designer Я вроде ответил. Постарался развёрнуто как мог. Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 @Designer Link to comment Share on other sites More sharing options...
d0tb0t Posted March 3, 2018 Author Share Posted March 3, 2018 Link to comment Share on other sites More sharing options...
krumax Posted March 4, 2018 Share Posted March 4, 2018 (edited) 13 часов назад, d0tb0t сказал: Дано: Opencart, один товар штаны. Опция размер: - M - 5 штук - XL - 5 штук Опция цвет: - белый - 3 штук - чёрный - 7 штук Как sql-запросом посчитать количество штанов белого цвета, размера XL в такой задаче может быть несколько вариантов ответа: 1) Штаны белые XL 1шт Штаны белые M 2шт Штаны чёрные XL 4шт Штаны чёрные M 3шт 2) Штаны белые XL 2шт Штаны белые M 1шт Штаны чёрные XL 3шт Штаны чёрные M 4шт и т.д Поэтому нужно указывать количество конкретно для каждой комбинации Цитата Интересует живой опыт. Скрещивали обмен с 1С и модулем Связанные опции (правда, был ещё тот геморой) Как вариант: Создаёте товар "Штаны белые" и для них уже добавляете опцию "Размер" (такой вариант предпочтителен). Для того, чтобы показать, что у Вас есть товар других цветов, то можно сделать модулем как вот на этом примере Edited March 4, 2018 by krumax Link to comment Share on other sites More sharing options...
ArtShatov Posted March 22, 2018 Share Posted March 22, 2018 привет. Остаток действительно не посчитать(ну или на первый взгляд не посчитать). Но вот посчитать число проданных белых штанов размером XL возможно. (данные из oc_order_option и oc_order_product). Если такое решение подойдет, то могу собрать запрос ближе к выходным. Link to comment Share on other sites More sharing options... d0tb0t Posted March 22, 2018 Author Share Posted March 22, 2018 @ArtShatov Вся пляска ради подсчёта и обновления остатков. Откуда вы знаете когда последнее поступление было? Link to comment Share on other sites More sharing options... ArtShatov Posted March 23, 2018 Share Posted March 23, 2018 @d0tb0t Все поступления есть в Моем Складе. Продажи есть в OpenCart, которые, в общем случае, можно считать списанием. Т.е. можно легко вычислять остатки, но они будут доступны только в Моем складе. И вычислять остатки будет Мой Склад. У моей супруги именно такая связка. OpenCart 1.5 + Мой склад. На стороне сайта не учитываем остатки. Списания в моем складе делаем вручную, т.к. продаж мало через сайт. Если что-то заказывают из того что нет на складе, то клиенту предлагается замена, подождать пока приедет от поставщика. + учитываются продажи в офлайн. В моем варианте вообще нет склада. Поэтому остатки не считаем. Link to comment Share on other sites More sharing options... d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 29 минут назад, ArtShatov сказал: Поэтому остатки не считаем. Даже при наличии "мой склад" актуальных остатков мы не имеем. Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Link to comment Share on other sites More sharing options... ArtShatov Posted March 23, 2018 Share Posted March 23, 2018 1 час назад, d0tb0t сказал: Даже при наличии "мой склад" актуальных остатков мы не имеем. Все верно. На стороне сайта остатков, действительно, не будет. Поэтому 1 час назад, d0tb0t сказал: Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Но чтобы остатки были хотя бы в моем складе нужно их туда заносить. Если продаж мало, то можно и руками кажыдый заказ в мой склад затянут. Если лень руками - можно автоматизировать. А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Link to comment Share on other sites More sharing options... d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 3 минуты назад, ArtShatov сказал: А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Ну в общем хотелось бы. OpenCart в тройке по популярности как ИМ. А какой магазин без учёта остатков? Без остатков это скорей каталог. Link to comment Share on other sites More sharing options... 4 months later... ArtShatov Posted August 15, 2018 Share Posted August 15, 2018 7 минут назад, sethtm сказал: остатки можно синхронизировать с моего склада ) пишите если актуально Поясните, как вы будете это делать? К сожалению, мне не надо, но очень интересно. Link to comment Share on other sites More sharing options... niger Posted August 15, 2018 Share Posted August 15, 2018 (edited) Я бы лучше создавал штаны разных цветов, связывая их в одну коллекцию, а опциями бы сделал размер штанов. Хотя, @krumax Вам уже указал - это и точки зрения юзабилити, и с точки зрения СЕО куда лучше, чем сделать один товар с огромной простыней опций и параметров. Edited August 15, 2018 by niger Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 (edited) у меня в магазине нет подобного примера, к сожалению: нет товара с двумя опциями.Потому проверить достоверность результатов не могу. Но вроде все решаемо. попробуйте вот так. Возможно, нужно будет ограничить поиск, предварительно сделав выборку ТОЛЬКО белых штанов, а затем из этой выборки уже селектить количество нужного размера. Anyway, ничего невозможного -- подсмотреть нужные option_id опции размера и цвета в табличке oc_option_description -- задать значения переменным SET @size_option_id = 14; SET @color_option_id = 14; -- подсмотреть нужные option_value_id в табличке oc_option_value_description для размер = XL и цвет = белый) -- задать значения переменным SET @size_id = 52; SET @color_id = 52; -- подсмотреть нужный id-шник товара ваших штанов -- задать значения переменным SET @product_id = 105; -- погнали считать... set @product_option_id_size = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_option_id AND option_value_id = @size_id LIMIT 1); set @product_option_id_color = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_color_id AND option_value_id = @color_id LIMIT 1); SELECT sum(opov.quantity) FROM oc_product_option_value opov WHERE opov.product_id = @product_id AND opov.product_option_id IN (@product_option_id_size, @product_option_id_color) AND opov.option_value_id IN (@size_id, @color_id); Edited August 15, 2018 by 100napb Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам Как посчитать количество товаров в опциях SQL запросом Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777 × Existing user? Sign In Sign Up Shopping section Back Purchased extensions Invoices Whishlist Alternative Contacts Forums News ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
d0tb0t Posted March 22, 2018 Author Share Posted March 22, 2018 @ArtShatov Вся пляска ради подсчёта и обновления остатков. Откуда вы знаете когда последнее поступление было? Link to comment Share on other sites More sharing options...
ArtShatov Posted March 23, 2018 Share Posted March 23, 2018 @d0tb0t Все поступления есть в Моем Складе. Продажи есть в OpenCart, которые, в общем случае, можно считать списанием. Т.е. можно легко вычислять остатки, но они будут доступны только в Моем складе. И вычислять остатки будет Мой Склад. У моей супруги именно такая связка. OpenCart 1.5 + Мой склад. На стороне сайта не учитываем остатки. Списания в моем складе делаем вручную, т.к. продаж мало через сайт. Если что-то заказывают из того что нет на складе, то клиенту предлагается замена, подождать пока приедет от поставщика. + учитываются продажи в офлайн. В моем варианте вообще нет склада. Поэтому остатки не считаем. Link to comment Share on other sites More sharing options... d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 29 минут назад, ArtShatov сказал: Поэтому остатки не считаем. Даже при наличии "мой склад" актуальных остатков мы не имеем. Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Link to comment Share on other sites More sharing options... ArtShatov Posted March 23, 2018 Share Posted March 23, 2018 1 час назад, d0tb0t сказал: Даже при наличии "мой склад" актуальных остатков мы не имеем. Все верно. На стороне сайта остатков, действительно, не будет. Поэтому 1 час назад, d0tb0t сказал: Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Но чтобы остатки были хотя бы в моем складе нужно их туда заносить. Если продаж мало, то можно и руками кажыдый заказ в мой склад затянут. Если лень руками - можно автоматизировать. А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Link to comment Share on other sites More sharing options... d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 3 минуты назад, ArtShatov сказал: А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Ну в общем хотелось бы. OpenCart в тройке по популярности как ИМ. А какой магазин без учёта остатков? Без остатков это скорей каталог. Link to comment Share on other sites More sharing options... 4 months later... ArtShatov Posted August 15, 2018 Share Posted August 15, 2018 7 минут назад, sethtm сказал: остатки можно синхронизировать с моего склада ) пишите если актуально Поясните, как вы будете это делать? К сожалению, мне не надо, но очень интересно. Link to comment Share on other sites More sharing options... niger Posted August 15, 2018 Share Posted August 15, 2018 (edited) Я бы лучше создавал штаны разных цветов, связывая их в одну коллекцию, а опциями бы сделал размер штанов. Хотя, @krumax Вам уже указал - это и точки зрения юзабилити, и с точки зрения СЕО куда лучше, чем сделать один товар с огромной простыней опций и параметров. Edited August 15, 2018 by niger Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 (edited) у меня в магазине нет подобного примера, к сожалению: нет товара с двумя опциями.Потому проверить достоверность результатов не могу. Но вроде все решаемо. попробуйте вот так. Возможно, нужно будет ограничить поиск, предварительно сделав выборку ТОЛЬКО белых штанов, а затем из этой выборки уже селектить количество нужного размера. Anyway, ничего невозможного -- подсмотреть нужные option_id опции размера и цвета в табличке oc_option_description -- задать значения переменным SET @size_option_id = 14; SET @color_option_id = 14; -- подсмотреть нужные option_value_id в табличке oc_option_value_description для размер = XL и цвет = белый) -- задать значения переменным SET @size_id = 52; SET @color_id = 52; -- подсмотреть нужный id-шник товара ваших штанов -- задать значения переменным SET @product_id = 105; -- погнали считать... set @product_option_id_size = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_option_id AND option_value_id = @size_id LIMIT 1); set @product_option_id_color = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_color_id AND option_value_id = @color_id LIMIT 1); SELECT sum(opov.quantity) FROM oc_product_option_value opov WHERE opov.product_id = @product_id AND opov.product_option_id IN (@product_option_id_size, @product_option_id_color) AND opov.option_value_id IN (@size_id, @color_id); Edited August 15, 2018 by 100napb Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам Как посчитать количество товаров в опциях SQL запросом Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777 × Existing user? Sign In Sign Up Shopping section Back Purchased extensions Invoices Whishlist Alternative Contacts Forums News ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 29 минут назад, ArtShatov сказал: Поэтому остатки не считаем. Даже при наличии "мой склад" актуальных остатков мы не имеем. Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Link to comment Share on other sites More sharing options...
ArtShatov Posted March 23, 2018 Share Posted March 23, 2018 1 час назад, d0tb0t сказал: Даже при наличии "мой склад" актуальных остатков мы не имеем. Все верно. На стороне сайта остатков, действительно, не будет. Поэтому 1 час назад, d0tb0t сказал: Кроме как по каждому обновлению корзины лазить за остатками удалённо в Мой склад. Но чтобы остатки были хотя бы в моем складе нужно их туда заносить. Если продаж мало, то можно и руками кажыдый заказ в мой склад затянут. Если лень руками - можно автоматизировать. А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Link to comment Share on other sites More sharing options... d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 3 минуты назад, ArtShatov сказал: А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Ну в общем хотелось бы. OpenCart в тройке по популярности как ИМ. А какой магазин без учёта остатков? Без остатков это скорей каталог. Link to comment Share on other sites More sharing options... 4 months later... ArtShatov Posted August 15, 2018 Share Posted August 15, 2018 7 минут назад, sethtm сказал: остатки можно синхронизировать с моего склада ) пишите если актуально Поясните, как вы будете это делать? К сожалению, мне не надо, но очень интересно. Link to comment Share on other sites More sharing options... niger Posted August 15, 2018 Share Posted August 15, 2018 (edited) Я бы лучше создавал штаны разных цветов, связывая их в одну коллекцию, а опциями бы сделал размер штанов. Хотя, @krumax Вам уже указал - это и точки зрения юзабилити, и с точки зрения СЕО куда лучше, чем сделать один товар с огромной простыней опций и параметров. Edited August 15, 2018 by niger Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 (edited) у меня в магазине нет подобного примера, к сожалению: нет товара с двумя опциями.Потому проверить достоверность результатов не могу. Но вроде все решаемо. попробуйте вот так. Возможно, нужно будет ограничить поиск, предварительно сделав выборку ТОЛЬКО белых штанов, а затем из этой выборки уже селектить количество нужного размера. Anyway, ничего невозможного -- подсмотреть нужные option_id опции размера и цвета в табличке oc_option_description -- задать значения переменным SET @size_option_id = 14; SET @color_option_id = 14; -- подсмотреть нужные option_value_id в табличке oc_option_value_description для размер = XL и цвет = белый) -- задать значения переменным SET @size_id = 52; SET @color_id = 52; -- подсмотреть нужный id-шник товара ваших штанов -- задать значения переменным SET @product_id = 105; -- погнали считать... set @product_option_id_size = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_option_id AND option_value_id = @size_id LIMIT 1); set @product_option_id_color = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_color_id AND option_value_id = @color_id LIMIT 1); SELECT sum(opov.quantity) FROM oc_product_option_value opov WHERE opov.product_id = @product_id AND opov.product_option_id IN (@product_option_id_size, @product_option_id_color) AND opov.option_value_id IN (@size_id, @color_id); Edited August 15, 2018 by 100napb Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам Как посчитать количество товаров в опциях SQL запросом Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777 × Existing user? Sign In Sign Up Shopping section Back Purchased extensions Invoices Whishlist Alternative Contacts Forums News ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
d0tb0t Posted March 23, 2018 Author Share Posted March 23, 2018 3 минуты назад, ArtShatov сказал: А вообще задача не понятно. Нужно защититься от заказов того что нет в наличии? Или надо с помощью Опенкарта учет наличия наладить? Ну в общем хотелось бы. OpenCart в тройке по популярности как ИМ. А какой магазин без учёта остатков? Без остатков это скорей каталог. Link to comment Share on other sites More sharing options...
ArtShatov Posted August 15, 2018 Share Posted August 15, 2018 7 минут назад, sethtm сказал: остатки можно синхронизировать с моего склада ) пишите если актуально Поясните, как вы будете это делать? К сожалению, мне не надо, но очень интересно. Link to comment Share on other sites More sharing options... niger Posted August 15, 2018 Share Posted August 15, 2018 (edited) Я бы лучше создавал штаны разных цветов, связывая их в одну коллекцию, а опциями бы сделал размер штанов. Хотя, @krumax Вам уже указал - это и точки зрения юзабилити, и с точки зрения СЕО куда лучше, чем сделать один товар с огромной простыней опций и параметров. Edited August 15, 2018 by niger Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 (edited) у меня в магазине нет подобного примера, к сожалению: нет товара с двумя опциями.Потому проверить достоверность результатов не могу. Но вроде все решаемо. попробуйте вот так. Возможно, нужно будет ограничить поиск, предварительно сделав выборку ТОЛЬКО белых штанов, а затем из этой выборки уже селектить количество нужного размера. Anyway, ничего невозможного -- подсмотреть нужные option_id опции размера и цвета в табличке oc_option_description -- задать значения переменным SET @size_option_id = 14; SET @color_option_id = 14; -- подсмотреть нужные option_value_id в табличке oc_option_value_description для размер = XL и цвет = белый) -- задать значения переменным SET @size_id = 52; SET @color_id = 52; -- подсмотреть нужный id-шник товара ваших штанов -- задать значения переменным SET @product_id = 105; -- погнали считать... set @product_option_id_size = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_option_id AND option_value_id = @size_id LIMIT 1); set @product_option_id_color = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_color_id AND option_value_id = @color_id LIMIT 1); SELECT sum(opov.quantity) FROM oc_product_option_value opov WHERE opov.product_id = @product_id AND opov.product_option_id IN (@product_option_id_size, @product_option_id_color) AND opov.option_value_id IN (@size_id, @color_id); Edited August 15, 2018 by 100napb Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам Как посчитать количество товаров в опциях SQL запросом Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777
niger Posted August 15, 2018 Share Posted August 15, 2018 (edited) Я бы лучше создавал штаны разных цветов, связывая их в одну коллекцию, а опциями бы сделал размер штанов. Хотя, @krumax Вам уже указал - это и точки зрения юзабилити, и с точки зрения СЕО куда лучше, чем сделать один товар с огромной простыней опций и параметров. Edited August 15, 2018 by niger Link to comment Share on other sites More sharing options...
100napb Posted August 15, 2018 Share Posted August 15, 2018 (edited) у меня в магазине нет подобного примера, к сожалению: нет товара с двумя опциями.Потому проверить достоверность результатов не могу. Но вроде все решаемо. попробуйте вот так. Возможно, нужно будет ограничить поиск, предварительно сделав выборку ТОЛЬКО белых штанов, а затем из этой выборки уже селектить количество нужного размера. Anyway, ничего невозможного -- подсмотреть нужные option_id опции размера и цвета в табличке oc_option_description -- задать значения переменным SET @size_option_id = 14; SET @color_option_id = 14; -- подсмотреть нужные option_value_id в табличке oc_option_value_description для размер = XL и цвет = белый) -- задать значения переменным SET @size_id = 52; SET @color_id = 52; -- подсмотреть нужный id-шник товара ваших штанов -- задать значения переменным SET @product_id = 105; -- погнали считать... set @product_option_id_size = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_option_id AND option_value_id = @size_id LIMIT 1); set @product_option_id_color = (SELECT product_option_id FROM oc_product_option_value WHERE product_id = @product_id AND option_id = @size_color_id AND option_value_id = @color_id LIMIT 1); SELECT sum(opov.quantity) FROM oc_product_option_value opov WHERE opov.product_id = @product_id AND opov.product_option_id IN (@product_option_id_size, @product_option_id_color) AND opov.option_value_id IN (@size_id, @color_id); Edited August 15, 2018 by 100napb Link to comment Share on other sites More sharing options... 100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам Как посчитать количество товаров в опциях SQL запросом
100napb Posted August 15, 2018 Share Posted August 15, 2018 если прямо очень надо посчитать именно средствами SQL, то без проблем могу помочь написать верный запрос. Мне не сложно, если есть тестовые данные. Другое дело, что запрос выше написан буквально на коленке, без возможности проверить корректность результата. Я уверен, что выше предложил почти то, что нужно. Возможно, нужно уточнить буквально пару условий. Но т.к. мотивации лично у меня нет что-то городить в своей базе и тратить значимое количество времени для решения Вашей задачки, то... могу дать 100% рабочий результат лишь при условии доступов хотя бы на селект в Вашу базу. В принципе, даже доступа к нескольким таблицам хватило б.... там делов на 5 минут. Link to comment Share on other sites More sharing options... 100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Подскажите sql запрос - чтобы отключить все категории в которых нет товаров By Fialka11, January 22 2 replies 150 views Fialka11 January 22 Помогите со SQL запросом к БД By Evgenka, July 12, 2020 13 replies 930 views niger December 13, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 269 views Verzun Monday at 03:17 PM Какой SQL запрос выполнить что бы для всех товаров массово назначить категорию By iler, November 17, 2022 3 replies 325 views iler November 18, 2022 Скидка в процентах в зависимости от количества и цены опции By Paveldz, September 7, 2022 1 reply 212 views uinfo January 27 Recently Browsing 0 members No registered users viewing this page.
100napb Posted August 16, 2018 Share Posted August 16, 2018 @d0tb0t, чем закончился-то Ваш квест? Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0
Recommended Posts