Copy(Campo,1,1) em SQL ???
Olá porgramadores,
Como faço para determinar os valores a serem somados em um plano de contas? O campo de Valor é único, não tem campo para Débito ou Crédito. O sistema entende que créditos são todas as contas iniciadas por ´1´ e débitos todas as contas iniciadas por ´2´. As contas são tipo 1.1.00.001 ou 2.2.01.001.
A instrução SQL:
Más está dando erro!
Qualquer ajuda será muito vem vinda.
Augusto.
Como faço para determinar os valores a serem somados em um plano de contas? O campo de Valor é único, não tem campo para Débito ou Crédito. O sistema entende que créditos são todas as contas iniciadas por ´1´ e débitos todas as contas iniciadas por ´2´. As contas são tipo 1.1.00.001 ou 2.2.01.001.
A instrução SQL:
with qSoma do begin Close; SQL.Text := ´Select Sum(Valor) as pEntradas from CaixaLanca where Copy(Conta,1,1) = "1" ´; Open; end; ShowMessage(FormatFloat(´#,.00´, qSoma.FieldByName(´pEntradas´).AsCurrency));
Más está dando erro!
Qualquer ajuda será muito vem vinda.
Augusto.
Zangado
Curtidas 0
Respostas
Denis
17/03/2006
Olá,
Não existe a função copy no sql. Qual o banco de dados está usando ? Existem funções para isso. Cada banco trabalha de uma forma.
Por exemplo. no sql server seria assim :
Select Sum(Valor) as pEntradas from CaixaLanca where substring(Conta,1,1) = ´1´
Não existe a função copy no sql. Qual o banco de dados está usando ? Existem funções para isso. Cada banco trabalha de uma forma.
Por exemplo. no sql server seria assim :
Select Sum(Valor) as pEntradas from CaixaLanca where substring(Conta,1,1) = ´1´
GOSTEI 0
Angelnoa
17/03/2006
Em Informix, por exemplo, vc poderia fazer assim:
´Select SUM(Valor) as pEntradas from CaixaLanca where Conta[1,1] = "1"
GOSTEI 0
Acacio
17/03/2006
Existe sim, Coloca assim
substring(campo from 1 for 4)
por exemplo
Exemplo
select subtring(nomCli from 1 for 10)
from tabcli
Vai aparecer 10 caracteres no nome do cliente
substring(campo from 1 for 4)
por exemplo
Exemplo
select subtring(nomCli from 1 for 10)
from tabcli
Vai aparecer 10 caracteres no nome do cliente
GOSTEI 0
Martins
17/03/2006
Existe sim, Coloca assim
substring(campo from 1 for 4)
por exemplo
Exemplo
select subtring(nomCli from 1 for 10)
from tabcli
Vai aparecer 10 caracteres no nome do cliente
A solução com [b:29b8c1ea9b]Substring[/b:29b8c1ea9b] funciona sim, agora, temos q ver qual o banco de dados do colega.
GOSTEI 0
Sremulador
17/03/2006
será que tem pro firebird alguma coisa assim ?
GOSTEI 0
Denis
17/03/2006
Para firebird use :
Substr(campo,1,1)
Substr(campo,1,1)
GOSTEI 0
Thomaz_prg
17/03/2006
Para firebird use :
Substr(campo,1,1)
Isso se você quiser usar UDF´s (que acompanhm o Firebird) senão pode usar a função nativa mesmo:
select substring(campo from 1 to 1) from tabela
GOSTEI 0
Martins
17/03/2006
[quote:d4f27c85d8]Para firebird use :
Substr(campo,1,1)
Isso se você quiser usar UDF´s (que acompanhm o Firebird) senão pode usar a função nativa mesmo:
select substring(campo from 1 to 1) from tabela
verdade amigo [b:d4f27c85d8]thomaz_prg[/b:d4f27c85d8], acho mais negócio usar a função nativa.
valew!!!
GOSTEI 0
Mmoreira
17/03/2006
O correto nao seria:
select substring(campo from 1 for 1) from tabela
GOSTEI 0
Thomaz_prg
17/03/2006
Verdade.... :lol:
Desculpem a falha. :oops:
Desculpem a falha. :oops:
GOSTEI 0