SELECT
t0.id = tid
t0.*
(
GROUP_CONCAT(
(
SELECT
IF( t1.nome = "" , t3.nome , t1,nome ) as nomefinal
FROM t1
LEFT JOIN t2 ON t1.t2id = t2.id
LEFT JOIN t3 ON t2.t3id = t3.id
WHERE t1.t0id = tid
ORDER BY nomefinal ASC
)
)
)
FROM t0
Eu mudei o nome das tabelas e dos campos pra ficar mais facil e resumido de entender, mais basicamente eu preciso fazer uma concatenação de nomes, mas para isso eu antes preciso checar se o nome está em branco, pois se tiver, preciso pegar o nome de uma outra tabela. Já tentei com GROUP_CONCAT e CONCAT, mais nenhum funcionou. Basicamente me retorna "subquery returns more than 1 row" (e é esse o intuito! mais imaginei como é uma subquery que está retornando dentro de uma função de concatenação, o MySQL entenderia que eu quero concatenar numa informação só...
Pergunta
Vinicius Loma
Bom dia!
Seguinte:
Eu mudei o nome das tabelas e dos campos pra ficar mais facil e resumido de entender, mais basicamente eu preciso fazer uma concatenação de nomes, mas para isso eu antes preciso checar se o nome está em branco, pois se tiver, preciso pegar o nome de uma outra tabela. Já tentei com GROUP_CONCAT e CONCAT, mais nenhum funcionou. Basicamente me retorna "subquery returns more than 1 row" (e é esse o intuito! mais imaginei como é uma subquery que está retornando dentro de uma função de concatenação, o MySQL entenderia que eu quero concatenar numa informação só...
O que posso fazer??
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.