Fórum Consulta no MySQL #462046
25/11/2013
0
Marcus Angelo
Curtir tópico
+ 0Posts
25/11/2013
Marcus Angelo
Preciso criar uma consulta no bd feito em MYSQL, onde tenho originalmente essa tabela
[url]http://mtgcg.com.br/site/construcao/ORIGINAL.jpg[/url]
E que gere essa saida.
Alguém pode auxiliar?
[url]http://mtgcg.com.br/site/construcao/SAIDA.jpg[/url]
Tenho uma tabela auxiliar TIPO com os campos
Extra, Grande, Medio, Pequeno -> Caso seja necessário usar
Gostei + 0
25/11/2013
Alex Lekao
Nao consegui acessar as imagens que postou, esta dando erro que nao tenho permissao.
Coloque o que vc precisa que vemos o que conseguimos.
Abraco.
Alex - Lekao
Gostei + 0
25/11/2013
Marcus Angelo
É basicamente uma crosstab, mas nao estou conseguindo realiza-la.
tenho os registros da seguinte forma:
ID_INDUSTRIA - MUNICIPIO - EXTRA - GRANDE - MEDIO - PEQUENO - MES - ANO
1 - SAO PAULO - 1000 - 800 - 500 - 250 - 11 - 2013
2 - BELO HORI - 2000 - 900 - 750 - 300 - 11 - 2013
e preciso de uma saida + ou - assim:
INDUSTRIA - MUNICIPIO - CLASSIFICACAO - JAN - FEV - MAR ... - NOV - DEZ - TOTAL
1 - SAO PAULO - EXTRA: 0 - 0 - 0 ... - 1000 - 0 - 1000
.............................- GRANDE: 0 - 0 - 0 ... - 800 - 0 - 800
............................- MEDIO: 0 - 0 - 0.... - 500 - 0 - 500
........................... - PEQUENO - 0 - 0- 0 ... 250 - 0 - 250
2 - BELO HORI - - EXTRA: 0 - 0 - 0 ... - 2000 - 0 - 2000
.............................- GRANDE: 0 - 0 - 0 ... - 900 - 0 - 900
............................- MEDIO: 0 - 0 - 0.... - 750 - 0 - 750
........................... - PEQUENO - 0 - 0- 0 ... 300 - 0 - 300
total - - EXTRA: 0 - 0 - 0 ... - 3000 - 0 - 3000
.............................- GRANDE: 0 - 0 - 0 ... - 1700 - 0 - 1700
............................- MEDIO: 0 - 0 - 0.... - 12500 - 0 - 1250
........................... - PEQUENO - 0 - 0- 0 ... 1000 - 0 - 150
basicamente isso.
Será que deu pra entender????
Gostei + 0
26/11/2013
Alex Lekao
Tentei acessar os links no outro post e continua dando erro de acesso.
eu nao entendi bem o qual o problema.
Posta o que vc tem de codigo tbm para analisarmos juntos.
Abraco.
Alex - Lekao
Gostei + 0
26/11/2013
Marcus Angelo
Gostei + 0
26/11/2013
Alex Lekao
eu tentei em dois navegadores diferentes e aconteceu a mesma coisa.
Posta ai e vamos ver o que conseguimos.
e pelo que estive vendo, vc precisara de dois processo, um para a ordenacao do Extra, Grande , etc,; e outro para fazer um pivo para colocar em colunas os resultados que seriam apresentados em linhas com os meses e anos.
isso do pivot seria para as colunas ficarem dinamicas, caso nao fosse necessario, acredito que com um case por exemplo ou um subselect especifico para cada mes/ano ja daria certo.
Abraco.
Alex - Lekao
Gostei + 0
27/11/2013
Marcus Angelo
Quanto a consulta SQL, realmente andei lendo algumas coisas, mas não entendi como fazer o PIVOT e preciso que fique dinamico pela quantidade de industrias, que apesar de variar muito pouco, pode variar em determinando momento do ano (acrescimo de mais alguma ou exclusao após algum periodo de inatividade).
Quanto a classificação, é fixa nestes quatro: Extra, Grande, Medio e Pequeno (e tenho uma tabela que gerencia estes 4 tipos, mas segundo o responsável isso não deve ter alteração).
Quantos aos meses também é fixo (ah, nao me diga neh, kkk), só o ano que é selecionado, mas passo via php então sempre fica fixo em 1 ano soh.
Tem como upar imagem aqui no forum? Não tenho acesso a dropbox ou sites do genero para upar as imagens...
Gostei + 0
27/11/2013
Alex Lekao
Quanto a consulta SQL, realmente andei lendo algumas coisas, mas não entendi como fazer o PIVOT e preciso que fique dinamico pela quantidade de industrias, que apesar de variar muito pouco, pode variar em determinando momento do ano (acrescimo de mais alguma ou exclusao após algum periodo de inatividade).
Quanto a classificação, é fixa nestes quatro: Extra, Grande, Medio e Pequeno (e tenho uma tabela que gerencia estes 4 tipos, mas segundo o responsável isso não deve ter alteração).
Quantos aos meses também é fixo (ah, nao me diga neh, kkk), só o ano que é selecionado, mas passo via php então sempre fica fixo em 1 ano soh.
Tem como upar imagem aqui no forum? Não tenho acesso a dropbox ou sites do genero para upar as imagens...
Ou Cara... legal... Parabens!!!!
e essas coisas dao correria mesmo.. rsrsr
honestamente nao sei se tem como colocar imagen no forum... rsrsr
normalmente eu compartilho pelo SkyDrive ou pelo Google Drive.. rssrsr
Com relacao ao pivot, sugeri pensando em que talvez vc quisesse que se nao estivesse no mes ele nao aparecesse, caso contrario, nao tendo problema em aparecer todos os meses acredito entao que nem seja necessario o uso do pivot.
A questao entao ficaria nas subselects para cada mes, ou usar o case para fazer os calculos de acordo com o mesmo, eu acredito que talvez seja mais interessante a subselect, que o custo de um e de outro deve ser bem proximo.
Gostei + 0
02/12/2013
Karlos Schett
mas e ai como anda o teu problema? solucionado?
Gostei + 0
03/12/2013
Alex Lekao
mas agora o Forum ta com opcao de Imagem....
agora ta ficando bao o negocio... rsrsr
Gostei + 0
07/02/2014
Marcus Angelo
Ainda não resolvi o problema. Na verdade me dediquei em terminar o sistema/programa e agora me faltam 2 relatórios para fazer.
Basicamente esse ainda.
Vou tentar upar duas imagens.
A primeira, é o relatório final, como preciso dele. Selecionei até maio na imagem, mas claro, preciso de todo o ano (que irei enviar via aplicacao o ano selecionado). Outro detalhe, uma coluna no final com o total.
[img:descricao=Relatório Desejado]http://arquivo.devmedia.com.br/forum/imagem/350622-20140207-104947.jpg[/img]
A segunda, é a estrutura do meu banco de dados. A tabela cadci é a responsável por guardar estes dados. Na imagem consta uma tupla da mesma com as informações e como está a sua estrutura.
[img:descricao=Estrutura do BD]http://arquivo.devmedia.com.br/forum/imagem/350622-20140207-105002.jpg[/img]
Detalhe no BD
[img:descricao=BD-Detalhe]http://arquivo.devmedia.com.br/forum/imagem/350622-20140207-105311.jpg[/img]
Detalhe da Tupla
[img:descricao=Detalhe da Tupla]http://arquivo.devmedia.com.br/forum/imagem/350622-20140207-105447.jpg[/img]
Quem puder me ajudar!!!!
Quando a otimização da consulta, essa não é minha preocupação no momento. O sistema roda em apenas uma máquina (ou no máximo duas, com servidor local na mesma rede) então a preocupação com tempo e tamanho ou melhor forma realmente não é necessária. Andei lendo várias coisas com o Case, subselects etc, mas realmente estou perdido. Não sei fazer estas consultas mais elaboradas no banco via SQL...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)