Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с запросом. update / 6 сообщений из 6, страница 1 из 1
03.11.2019, 22:13
    #39884824
dok11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
Здравствуйте.
Есть 2 таблицы.

Таблица с продуктами
products_table

id id_cat title description keywords ...

И таблица связь, продукт и категория.
prduct_category_relations

id_product id_category
10 26
10 32
10 47
27 26
27 16

Можно ли сформировать запрос который бы обновлял бы записи в таблице с продуктами с определёнными id таким образом что бы id-шники категорий были через запятую в поле id_cat таблицы с продуктами.
id id_cat title description keywords
10 26,32,47
27 26,16
...
Рейтинг: 0 / 0
07.11.2019, 13:08
    #39886179
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
dok11,

Прочитай в Сети про 1НФ и чем грозит её нарушение.
...
Рейтинг: 0 / 0
11.11.2019, 08:28
    #39887306
dok11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
Перв. нормальную ни кто не нарушает, Вы НЕ въехали в вопрос!
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
UPDATE `katalog_products` AS pr
		SET pr.id_cat = 
			(
				SELECT GROUP_CONCAT(DISTINCT rel.id_cat)
				FROM `katalog_products_category_relations` AS rel
				WHERE rel.id_data = pr.id
				GROUP BY rel.id_data
			)
		WHERE pr.id IN (' . implode(',', $id) . ')
...
Рейтинг: 0 / 0
11.11.2019, 09:02
    #39887311
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
dok11
Перв. нормальную ни кто не нарушает
А хранение в одном поле нескольких ссылок в CSV - это что, как-то соответствует 1НФ?

Не, запрос-то элементарный

Код: sql
1.
2.
3.
4.
5.
UPDATE products_table, ( SELECT id_product, GROUP_CONCAT(id_category) categories
                         FROM product_category_relations
                         GROUP BY id_product ) categories_CSV
SET products_table.id_cat = categories_CSV.categories
WHERE products_table.id = categories_CSV.id_product 



Но что потом Вы намерены делать с этими денормализованными (что бы Вы там себе не думали) данными?
...
Рейтинг: 0 / 0
12.11.2019, 12:37
    #39888015
dok11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
Данные в поле используются в обслуживании проекта, для удобства выгрузки данных, очень редко, в выборке данных и в работе проекта поле не участвует. Позже, планируется к удалению...
...
Рейтинг: 0 / 0
12.11.2019, 13:47
    #39888054
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом. update
dok11
для удобства выгрузки данных
Ну так и выгружайте прямо запрос, чего дерьма-то в таблицах хранить?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите с запросом. update / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]