powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / JOIN c конкатенацией значений полей через разделитель
6 сообщений из 6, страница 1 из 1
JOIN c конкатенацией значений полей через разделитель
    #39927487
Атаська
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Есть таблица products со списком товаров.
Есть таблица images1 со списком главных изображений товаров с записями вида "main_image.jpg".
Есть таблица images2 со списком остальных изображений товара с записями вида "some_image.jpg"
Вторая и третья таблицы связаны с таблицей товаров по ключу id .

Возможно ли через JOIN добавить в таблицу products поле images, в котором будут названия файлов всех изображений товара из обеих таблиц, перечисленные через разделитель (например '|')?

Задача осложняется ещё и тем, что в таблице images2 может быть два и больше изображения (две и больше строк), соответствующие одному товару (одной записи) из products .

Спасибо всем за помощь. Достаточно далека от данной темы - сейчас вот пытаюсь разобраться, но на некоторых моментах упираюсь в стену, так как даже не знаю, как правильно сформулировать запрос в гугле.
...
Рейтинг: 0 / 0
JOIN c конкатенацией значений полей через разделитель
    #39927516
Атаська
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попыталась дополнительно изобразить графически
...
Рейтинг: 0 / 0
JOIN c конкатенацией значений полей через разделитель
    #39927536
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT id, name, GROUP_CONCAT(image ORDER BY is_main DESC) images
FROM ( SELECT p.id, p.name, i.name image, TRUE is_main
       FROM products p
       LEFT JOIN images1 i ON p.id = i.id
     UNION ALL
       SELECT p.id, p.name, i.name, FALSE
       FROM products p
       LEFT JOIN images2 i ON p.id = i.id ) total
GROUP BY id, name


Атаська
Есть таблица images1 со списком главных изображений товаров с записями вида "main_image.jpg".
Есть таблица images2 со списком остальных изображений товара с записями вида "some_image.jpg"
И какой же [censored] альтернативно одарённый человек это придумал?
...
Рейтинг: 0 / 0
JOIN c конкатенацией значений полей через разделитель
    #39927544
Атаська
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina ,
спасибо вам огромное. А можно ли установить свой разделитель при конкатенации? Например, "|".

И какой же [censored] альтернативно одарённый человек это придумал? Это штатный механизм работы с картинками в CMS ProcessWire. Вот пытаюсь мигрировать на другую.
...
Рейтинг: 0 / 0
JOIN c конкатенацией значений полей через разделитель
    #39927553
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Атаська
можно ли установить свой разделитель при конкатенации?
GROUP_CONCAT() function
...
Рейтинг: 0 / 0
JOIN c конкатенацией значений полей через разделитель
    #39927561
Атаська
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
ещё раз большое спасибо.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / JOIN c конкатенацией значений полей через разделитель
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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