artbe Posted November 24, 2018 Report Share Posted November 24, 2018 (edited) Прошу помощи с запросом. Мне надо запросом сменить url категорий на url товаров. (часть url категорий и url товаров совпадают, часть нет). Например: url категории: audi-q5-s-line, а url товара audi-q5. Сделал вот так: UPDATE s_categories f1 LEFT OUTER JOIN s_products f2 ON f1.url != f2.url SET f1.url = f2.url Но получился бред, сравнивая по url. Скорее всего надо делать запрос на выбор 3 таблиц, s_categories, s_products, s_products_categories и делать условие по id. Edited November 24, 2018 by artbe Quote Link to post Share on other sites
phukortsin Posted November 24, 2018 Report Share Posted November 24, 2018 Пока бред в постановке задачи... Quote Link to post Share on other sites
artbe Posted November 24, 2018 Author Report Share Posted November 24, 2018 Пока бред в постановке задачи... У меня в каждой категории по 1 товару Quote Link to post Share on other sites
phukortsin Posted November 24, 2018 Report Share Posted November 24, 2018 Примерно так: update s_categories c set c.url = ( select p.url from s_products p, s_products_categories pc WHERE p.id=pc.product_id and c.id=pc.category_id LIMIT 1) Quote Link to post Share on other sites
artbe Posted November 26, 2018 Author Report Share Posted November 26, 2018 Примерно так: update s_categories c set c.url = ( select p.url from s_products p, s_products_categories pc WHERE p.id=pc.product_id and c.id=pc.category_id LIMIT 1) Спасибо. Только теперь у родительских категорий - стерлась ссылка. Т.е. url = Null Quote Link to post Share on other sites
phukortsin Posted November 26, 2018 Report Share Posted November 26, 2018 Так и должно быть согласно запросу. Вероятно, потому, что Ваше заявление "У меня в каждой категории по 1 товару" неверное. Потому и говорят часто: правильно поставленный вопрос - половина ответа... Quote Link to post Share on other sites
artbe Posted November 26, 2018 Author Report Share Posted November 26, 2018 Так и должно быть согласно запросу. Вероятно, потому, что Ваше заявление "У меня в каждой категории по 1 товару" неверное. Потому и говорят часто: правильно поставленный вопрос - половина ответа... нет. Есть родительская категория AUDI.В ней подкатегории: Audi A1 Hb 5-ти дв. с 10г. / Audi A3 (8V) Sd/Hb c 13г. и т.д. В каждой подкатегории по 1 товару.Ваш запрос меняет url подкатегориям (это ок) и меняет url родительской категории AUDI на NULL. При этом mysql ругается на то, что url не может быть NULL. Quote Link to post Share on other sites
phukortsin Posted November 26, 2018 Report Share Posted November 26, 2018 нет. Есть родительская категория AUDI.В ней подкатегории: Audi A1 Hb 5-ти дв. с 10г. / Audi A3 (8V) Sd/Hb c 13г. и т.д. В каждой подкатегории по 1 товару.Ваш запрос меняет url подкатегориям (это ок) и меняет url родительской категории AUDI на NULL. При этом mysql ругается на то, что url не может быть NULL. Именно не нет, а как раз да.Вы сказали "У меня в каждой категории по 1 товару". А теперь посмотрите, сколько у Вас товаров в категории AUDI. Будете настаивать, что именно один? Quote Link to post Share on other sites
Noxter Posted November 26, 2018 Report Share Posted November 26, 2018 Именно не нет, а как раз да.Вы сказали "У меня в каждой категории по 1 товару". А теперь посмотрите, сколько у Вас товаров в категории AUDI. Будете настаивать, что именно один?Корс тебе что в лоб что по лбу.Человек написал что по одному товару в каждой категории и это так, о количестве товаров в родительской категории речи не было, ты как всегда сам себе палки в колёса вставил. Quote Link to post Share on other sites
phukortsin Posted November 26, 2018 Report Share Posted November 26, 2018 Корс тебе что в лоб что по лбу.Человек написал что по одному товару в каждой категории и это так, о количестве товаров в родительской категории речи не было, ты как всегда сам себе палки в колёса вставил. Обычно не только программисты, но и обычные люди четко понимают смысл 'в каждой'... Quote Link to post Share on other sites
Noxter Posted November 26, 2018 Report Share Posted November 26, 2018 Обычно не только программисты, но и обычные люди четко понимают смысл 'в каждой'...Ты необычный Quote Link to post Share on other sites
artbe Posted November 26, 2018 Author Report Share Posted November 26, 2018 (edited) Всем спасибо, вручную сделал Edited November 26, 2018 by artbe Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.