@Night386

Как придать значения таблице?

Всем доброй ночи, помогите разобраться как сделать. Имеется колонка value_old в ней значения , через запятую, можно ли их как то сверить с базой c_user.id и придать им имена заместо цифр? айди в c_user.id

select id_element,
`table`,
param,
value_old,

FROM c_history
LEFT JOIN c_object ON c_object.id = c_history.id_element
LEFT JOIN c_user ON c_user.id = c_history.id_user

WHERE `table` = 'c_object' AND param = 'ids_user_merge'


668f0189bdab5454095795.jpeg
  • Вопрос задан
  • 99 просмотров
Решения вопроса 1
@maksam07
Вроде бы что-то похожее на это:
SELECT
    ch.id_element,
    ch.`table`,
    ch.param,
    GROUP_CONCAT(cu.name) AS value_new
FROM
    c_history ch
LEFT JOIN
    c_object co ON co.id = ch.id_element
LEFT JOIN
    c_user cu ON FIND_IN_SET(cu.id, ch.value_old)
WHERE
    ch.`table` = 'c_object'
    AND ch.param = 'ids_user_merge'
GROUP BY
    ch.id_element, ch.`table`, ch.param;

Но убедительно буду просить прочитать правила нормализации бд, чтобы не было больше таких вопросов. И таких таблиц.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы