MySQL - GROUP_CONCAT con dos columnas de diferentes tablas

IlludiumPu36;

Quiero concatenar dos columnas de diferentes tablas en mi GROUP_CONCAT actual:

SELECT MAX(unit.unit_pk) AS unit_pk,
       GROUP_CONCAT(unit_outcome.unit_outcome SEPARATOR '|') unit_outcomes,
       MAX(program_outcome.program_outcome) program_outcome,
       GROUP_CONCAT(unit_outcome.unit_outcome_pk) unit_outcome_pks, 
       program_outcome.program_outcome_pk,
       program_outcome.program_outcome
FROM unit
INNER JOIN unit_unit_outcome_lookup
    ON unit_unit_outcome_lookup.unit_fk = unit.unit_pk
INNER JOIN unit_outcome
    ON unit_outcome.unit_outcome_pk = unit_unit_outcome_lookup.unit_outcome_fk
INNER JOIN program_outcome_unit_outcome_lookup
    ON program_outcome_unit_outcome_lookup.unit_outcome_fk = unit_outcome.unit_outcome_pk
INNER JOIN program_outcome
    ON program_outcome.program_outcome_pk = program_outcome_unit_outcome_lookup.program_outcome_fk
GROUP BY program_outcome_pk ORDER BY program_outcome.program_outcome ASC

así que eso

GROUP_CONCAT(unit_outcome.unit_outcome SEPARATOR '|') unit_outcomes

cosechadoras unit.unit_code y unit_outcome.unit_outcome el interiorGROUP_CONCAT

Asumo que esto se puede hacer?

El resultado Busco sería una cadena desde el GROUP_CONCAT como "unit_code: unit_outcome"

violín db

akina:
GROUP_CONCAT(CONCAT(unit.unit_code, '-', unit_outcome.unit_outcome) SEPARATOR '|')

Se puede usar cualquier otro separador en CONCAT () en lugar de '-'la que he utilizado al azar.

También es posible utilizar CONCAT_WS () en lugar de CONCAT () - especialmente cuando más de 2 campos deben ser concatenados en un solo registro de origen.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=347374&siteId=1
Recomendado
Clasificación