Somar varios Join no mysql

MySQL

PHP

30/08/2018

Bom dia, alguem pode me dar uma luz

tenho essa query abaixo:

SELECT bairro.ba_bairro AS ba_bairro, count(cadastro.ca_bairro) AS count_ca_outro_bairro, sum(cadastro.ca_bairro) AS sum_ca_bairro FROM (cadastro LEFT JOIN bairro ON bairro.ba_codigo=cadastro.ca_bairro) GROUP BY bairro.ba_bairro

que faço uma mysql_fetch_assoc() mostrando o nome do bairro x e o total de registro dele na tabela cadastro

sendo que o mesmo existe mas 10 campos chamados:

ca_outro_bairro_1,ca_outro_bairro_2,ca_outro_bairro_3,ca_outro_bairro_4,ca_outro_bairro_5,ca_outro_bairro_6,ca_outro_bairro_7,ca_outro_bairro_8,ca_outro_bairro_9,ca_outro_bairro_10

eu queria somar todos
pois um cadastro pode morar no bairro x mas tem conhecido no bairro y

ai eu quero ter um relatório aonde mostra o total por bairro que some o total de cadastro nessas colunas relacionadas acima

exemplo o bairro : bairro “centro” existe 20 cadastro na coluna ca_bairro e na coluna ca_outro_bairro_1 tem 10 registro entao no bairro centro vai mostra 30 registro e assim com as outras colunas
Lucas

Lucas

Curtidas 0

Melhor post

Alex Lekao

Alex Lekao

04/09/2018

Ola Lucas, bom dia!!!

Não sei se entendi bem, mas acredito que vc terá que fazer subselects para dar os resultados em separado(colunas) conforme falou.

Espero ter ajudado.

Atenciosamente,
GOSTEI 1

Mais Respostas

Emerson Nascimento

Emerson Nascimento

30/08/2018

não sei se é a melhor forma, mas deve trazer o resultado esperado:
SELECT t.bairro, b.ba_bairro, COUNT(*) qtdreg from (
SELECT ca_bairro bairro
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_1
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_2
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_3
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_4
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_5
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_6
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_7
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_8
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_9
FROM cadastro
UNION ALL
SELECT ca_outro_bairro_10
FROM cadastro
) t
LEFT JOIN bairro b ON b.ba_codigo = t.bairro
GROUP BY t.bairro, b.ba_bairro
GOSTEI 1
POSTAR