我有一个查询,如下所示:
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"
谢谢
答案 0 :(得分:2)
听起来像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;