Запрос MySQL получает строковое значение из результата запроса

У меня есть запрос следующим образом:

SELECT *
    FROM tb_circulares LEFT JOIN tb_colegios ON tb_circulares.colegio_circular = tb_colegios.id_colegio

    LEFT JOIN tb_circulares_clase ON tb_circulares.codigo_circular = tb_circulares_clase.circular
    LEFT JOIN tb_clases ON tb_circulares_clase.clase = tb_clases.id_clase
    WHERE colegio_circular = 17

Выходные данные запроса показывают три строки.

Один из столбцов строки является значением поля tb_circular_clase.nombre_clase.

Я хотел бы получить строку, содержащую три результирующих значения для tb_circular_clase.nombre_clase.

Например:

row1-> nombre_clase = "1º primaria"

row2-> nombre_clase = "3ª secundaria"

row3-> nombre_clase = "4º primaria"

Можно ли получить результирующее поле запроса с окончательным значением?

`resultado = "1º primaria - 3ª secundaria - 4º primaria"

Спасибо

@Strawberry, я ценю ваше предложение, но я не эксперт по SQL. Я использую MySQL только в базовом подходе. Я предполагаю, что предлагаемая ссылка выходит далеко за рамки моих потребностей.

mvasco 22.05.2019 13:30

Я предполагаю, что предложенная ссылка ИМЕННО то, что вам нужно. Принятый ответ был написан с учетом вас.

Strawberry 22.05.2019 13:32
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
1
2
25
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, вам нужен group_concat(), который представляет собой функцию агрегации, объединяющую все значения группы.

SELECT group_concat(nombre SEPARATOR ' - ') resultado
       FROM tb_circulares
            LEFT JOIN tb_colegios
                      ON tb_circulares.colegio_circular = tb_colegios.id_colegio
            LEFT JOIN tb_circulares_clase
                      ON tb_circulares.codigo_circular = tb_circulares_clase.circular
            LEFT JOIN tb_clases
                      ON tb_circulares_clase.clase = tb_clases.id_clase
       WHERE colegio_circular = 17;

Другие вопросы по теме