SQLinfo.ru - Все о MySQL Фестиваль «Российские интернет-технологии» 2017

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 23.07.2016 09:46:28

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

помогите с запросом.

Доброго дня!
Необходимо на страницах выводить ссылки на родительские категории к которым привязаны продукты. в виде кода в поле short_description.

Типа так
<p><a href="/mikrovolnovaya-pech-nerzhaveyuwim-pokrytiem" title="Микроволновая печь с нержавеющим покрытием">с нержавеющим покрытием</a>   

Имеются таблицы

oc_ocfilter_page
id | 255
category_id | 144
keyword | /mikrovolnovaya-pech-nerzhaveyuwim-pokrytiem
title | Микроволновая печь с нержавеющим покрытием

oc_product_to_category
product_id | 12345
category_id | 144

oc_product_description
product_id | 123123
short_description | ""



Пишу так.


UPDATE oc_product_description pd
inner join oc_product_to_category pc on pd.product_id=pc.product_id
inner join oc_ocfilter_page op on pc.category_id=op.category_id
SET pd.`short_description`=concat(
'<b>ТЕГИ:</b> ',(
select
GROUP_CONCAT(DISTINCT '<a href="/',
'', op2.keyword, '" ',
'title=',
'"', op2.title, '">',
'',
'', op2.title, '</a>',
' ')

from oc_ocfilter_page op2
inner join oc_product_to_category pc2 on op2.category_id=pc2.category_id

where
pc2.product_id = pd.product_id
and pc2.category_id = pc.category_id
))
where
pc.category_id=144
and pc.product_id=1210
 


Выводит ссылки, но в другие категории.

<b>ТЕГИ:</b> <a href="/mikrovolnovye-pechi-Bosсh" title="Микроволновые печи Bosch">Микроволновые печи Bosch</a> ,<a href="/mikrovolnovye-pechi-daewoo" title="Микроволновые печи Daewoo">Микроволновые печи Daewoo</a> ,<a href="/mikrovolnovye-pechi-lg" title="Микроволновые печи LG">Микроволновые печи LG</a> ,<a href="/mikrovolnovye-pechi-midea" title="Микроволновые печи Midea">Микроволновые печи Midea</a> ,<a href="/mikrovolnovye-pechi-panasonic" title="Микроволновые печи Panasonic">Микроволновые печи Panasonic</a> ,<a href="/mikrovolnovye-pechi-rolsen" title="Микроволновые печи Rolsen">Микроволновые печи Rolsen</a> ,<a href="/mikrovolnovye-pechi-rubin" title="Микроволновые печи Rubin">Микроволновые печи Rubin</a> ,<a href="/mikrovolnovye-pechi-samsung" title="Микроволновые п



Выводит все подрят, значит неверно привязаны, помогите!

Неактивен

 

#2 23.07.2016 18:06:35

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

update это обновление, а не вывод

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

Неактивен

 

#3 23.07.2016 20:32:44

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

Re: помогите с запросом.

Да я добавляю.
Честно говоря запутался, не могу найти конкретную привязку  oc_ocfilter_page page_id к product_id

таблицы
oc_ocfilter_option
oc_ocfilter_option_description
oc_ocfilter_option_to_category
oc_ocfilter_option_to_store
oc_ocfilter_option_value
oc_ocfilter_option_value_description
oc_ocfilter_option_value_to_product
oc_ocfilter_option_value_to_product_description
oc_ocfilter_page


oc_ocfilter_page
page_id | 255 | 234 | 233
category_id | 144 | 144 | 144
keyword | /mikrovolnovaya-pech-nerzhaveyuwim-pokrytiem | /mikrovolnovaya-pech-bosh | /mikrovolnovaya-pech-s-grilem
title | Микроволновая печь с нержавеющим покрытием | Микроволновая печь Bosh | Микроволновая печь с грилем

oc_product_to_category
product_id | 12345 | 123 | 4323
category_id | 144 | 111 | 323

oc_product_description
product_id | 12345 | 123 | 4323
short_description | ""



oc_ocfilter_option_value_to_product   
product_id | 12345 | 123 | 4323
value_id
option_id


вот сама таблица
oc_ocfilter_page
http://pixs.ru/showimage/ocfilterpa_614 … 693215.jpg

Неактивен

 

#4 25.07.2016 21:16:58

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

вы не написали что должно получиться в поле short_description после обновления на указанных данных

Неактивен

 

#5 25.07.2016 21:46:37

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

Re: помогите с запросом.

<p><a href="/mikrovolnovaya-pech-nerzhaveyuwim-pokrytiem" title="Микроволновая печь с нержавеющим покрытием">с нержавеющим покрытием</a>

Неактивен

 

#6 25.07.2016 21:57:14

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

почему?
product_id = 12345 соответствует category_id = 144
а в таблице oc_ocfilter_page category_id = 144 соответствует 3 микроволновки

Неактивен

 

#7 25.07.2016 23:09:00

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

Re: помогите с запросом.

Именно, сам не знаю как и где связывать продукт и page_id

Неактивен

 

#8 25.07.2016 23:21:47

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

тогда в текущих условия задача не имеет решения

Неактивен

 

#9 25.07.2016 23:26:31

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

Re: помогите с запросом.

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

Неактивен

 

#10 25.07.2016 23:42:45

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

показывайте
это если она есть

Неактивен

 

#11 25.07.2016 23:47:28

Bazz
Участник
Зарегистрирован: 13.04.2016
Сообщений: 18

Re: помогите с запросом.

У вас есть скайп или иной вид связи для удобства, завтра связаться?

Неактивен

 

#12 26.07.2016 00:05:25

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5130

Re: помогите с запросом.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson