У меня проблема с правильным синтаксисом для использования UNION и GROUP_CONCAT в этой ситуации:
У меня есть 4 таблицы:
Записи в «базовых» таблицах может иметь много связанных записей в t1 и t2 через таблицу mm.
Я создаю VIEW в MySQL, и мне нужно, чтобы все эти связанные записи отображались в одном столбце, разделенном запятыми.
Это базовый MySQL код:
SELECT base.uid, t1.nombre_es
FROM base
INNER JOIN mm
ON mm.uid_local=base.uid
INNER JOIN t1
ON mm.uid_foreign=t1.uid WHERE mm.tablenames = 't1'
UNION
SELECT base.uid, t2.nombre_es
FROM base
INNER JOIN mm
ON mm.uid_local=base.uid
INNER JOIN t2
ON mm.uid_foreign=t2.uid WHERE mm.tablenames = 't2'
Заранее спасибо.
Я мог бы сделать это с помощью двух ПРОСМОТРОВ, первое с использованием приведенного выше кода с именем «viewtest», а второе с этим кодом:
SELECT base.uid,
GROUP_CONCAT(DISTINCT vi.nombre_es ORDER BY vi.nombre_es SEPARATOR ',') as nombre
FROM base
INNER JOIN viewtest as vi
ON vi.uid=base.uid
GROUP BY uid
Теперь вопрос: Как можно Я объединяю эти два представления в одном представлении?