| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/10/2008 19:51:01
|
frid
Thread.start()
Membro desde: 09/09/2008 16:53:56
Mensagens: 48
Offline
|
Olá eberson_oliveira,
Cara, não entendi muito o que vc quer, mas vou colocar o que eu interpretei, aí vai:
Supondo que os campos A B e C sejam de tabelas diferentes, e vc quer o calculo ( a + b ) / c, se pode fazer isso no próprio select, segue abaixo um exemplo:
Select a.A, b.B, c.C, ((a=b)/c) as Calculo from A as a, B as b, C as c;
Nesse caso, ele vai voltar como consulta as colunas A, B, C e Calculo, ai basta capturar o resultado da coluna Calculo.
Bom, foi mais ou menos que eu entendi o que vc queria, se não for, tente esclarecer melhor, ficou um pouco confuso, blz ...
Generosamente,
Frid
|
Não tente andar com as pernas dos outros, pois vc tem as suas, então caminhe para seus objetivos e conquiste-os ...
By Frid |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/10/2008 20:09:25
|
frid
Thread.start()
Membro desde: 09/09/2008 16:53:56
Mensagens: 48
Offline
|
Opa,
Coloquei errado, faltou coisa, substitua esse:
Select a.A, b.B, c.C, ((a=b)/c) as Calculo from A as a, B as b, C as c;
por esse, ficaria com uma melhor sintaxe para vc entender e está corrigido que eu tinha feito errado:
"Select a.campoA, b.campoB, c.campoC, ((a.campoA + b.campoB)/c.campoC) as Calculo from A as a, B as b, C as c;"
|
Não tente andar com as pernas dos outros, pois vc tem as suas, então caminhe para seus objetivos e conquiste-os ...
By Frid |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/10/2008 20:39:40
|
gpd38
JavaEvangelist
![[Avatar]](/images/avatar/0810699abe09927a03a8b5a0247c6797.jpg)
Membro desde: 17/03/2007 01:55:58
Mensagens: 380
Localização: http://www.faculdadepuc.xpg.com.br
Offline
|
A resposta sai como String mas talves algum metodo te ajude.
Ps: De uma olhada em expressao matematica posfixada e infixada. Tentei tratar o maximo de erros.
Copie e cole em uma IDE. Compile e Execute para ver as respostas
http://www.faculdadepuc.xpg.com.br/expressaomatematica
|
GPD |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/10/2008 07:46:47
|
eberson_oliveira
JavaGuru
![[Avatar]](/images/avatar/b0074757eb8e629f5a4c89a4b40b277e.jpg)
Membro desde: 16/01/2008 10:18:17
Mensagens: 206
Localização: Matão - SP
Offline
|
frid wrote:Olá eberson_oliveira,
Cara, não entendi muito o que vc quer, mas vou colocar o que eu interpretei, aí vai:
Supondo que os campos A B e C sejam de tabelas diferentes, e vc quer o calculo ( a + b ) / c, se pode fazer isso no próprio select, segue abaixo um exemplo:
Select a.A, b.B, c.C, ((a=b)/c) as Calculo from A as a, B as b, C as c;
Nesse caso, ele vai voltar como consulta as colunas A, B, C e Calculo, ai basta capturar o resultado da coluna Calculo.
Bom, foi mais ou menos que eu entendi o que vc queria, se não for, tente esclarecer melhor, ficou um pouco confuso, blz ...
Generosamente,
Frid
Olá frid,
O problema está no fato de eu ter que efetuar esse select varias vezes por minuto, a estrutura do banco não é a mais adequada e o select "correto", por causa da estrutura do banco, acaba sendo muito custoso de forma que eu preciso trazer o mínimo de campos possível para não prejudicar a minha rede nem minha base. Estruturar o banco está fora de cogitação aqui na empresa... além disso alguns cálculos só poderiam ser feitos em procedures o que agrava o problema da estrutura do banco... por isso preciso de uma solução que esteja fora do select.
O resultset que eu citei é na realidade um repositório de dados que implementa um resultset (não perguntem pq isso... vocês, com certeza, não vão querer saber a resposta...) mas trabalha desconectado o que acaba pesando um pouco menos na hora de trabalhar com os valores...
Enfim a solução mais correta, no meu ponto de vista, é montar alguma estrutura no padrão da que estou perguntado a vocês... pq eu preciso trabalhar com o select mais simples possível...
Espero que tenha sido claro na minha explicação...
[]
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/10/2008 07:49:07
|
eberson_oliveira
JavaGuru
![[Avatar]](/images/avatar/b0074757eb8e629f5a4c89a4b40b277e.jpg)
Membro desde: 16/01/2008 10:18:17
Mensagens: 206
Localização: Matão - SP
Offline
|
gpd38 wrote:
A resposta sai como String mas talves algum metodo te ajude.
Ps: De uma olhada em expressao matematica posfixada e infixada. Tentei tratar o maximo de erros.
Copie e cole em uma IDE. Compile e Execute para ver as respostas
http://www.faculdadepuc.xpg.com.br/expressaomatematica
obrigado gpd38, vou dar uma olhada e dou um retorno assim que possível... Pensei em implementar algo como uma estrutura posfixada, no entanto preciso de algo que qualquer um possa entender e que seja bastante intuitivo (até para os mais leigos), já que nem todos conhecem este tipo de expressão.
|
|
|
 |
|
|
|
|