Fórum Consulta no MySQL #462046

25/11/2013

0

Preciso realizar uma consulta no Banco de Dados, e posso até propor uma mudança nas tabelas, caso necessário, mas inicialmente a ideia é realizar a consulta.
Marcus Angelo

Marcus Angelo

Responder

Posts

25/11/2013

Marcus Angelo

Desculpe. Cliquei erroneamente no "Enviar".


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
Responder

Gostei + 0

25/11/2013

Alex Lekao

Oi Marcus, boa tarde!!

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
Responder

Gostei + 0

25/11/2013

Marcus Angelo

Acho que corrigi o problema de permissão do servidor.

É 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????

Responder

Gostei + 0

26/11/2013

Alex Lekao

Oi Marcus, bom dia!!!

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
Responder

Gostei + 0

26/11/2013

Marcus Angelo

Pelo meu navegador, apos dar o erro de permissao ao tentar abrir as imagens, dou enter na barra de endereco e consigo visualisar as imagens. Vou tentar postar hoje a tarde.
Responder

Gostei + 0

26/11/2013

Alex Lekao

Oi Marcus,

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
Responder

Gostei + 0

27/11/2013

Marcus Angelo

Estou na correria, ultima semana de gravidez da minha esposa e uns par de coisas pra arrumar ainda pra chegada do herdeiro :D


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...
Responder

Gostei + 0

27/11/2013

Alex Lekao

Estou na correria, ultima semana de gravidez da minha esposa e uns par de coisas pra arrumar ainda pra chegada do herdeiro :D


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.
Responder

Gostei + 0

02/12/2013

Karlos Schett

Google drive é o normal né rsrs,

mas e ai como anda o teu problema? solucionado?
Responder

Gostei + 0

03/12/2013

Alex Lekao

puts... e como... rsrsr

mas agora o Forum ta com opcao de Imagem....

agora ta ficando bao o negocio... rsrsr
Responder

Gostei + 0

07/02/2014

Marcus Angelo

Olá amigos.

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...
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar