Realmente não funciona no FireBird.

Mas em Sybase funciona. O Sybase permite sobre efetuar operação com colunas 
calculadas dentro de um mesmo Select. Provavelmente duncionará em SQL Server.

 
select data,
(CASE WHEN valor > 0 THEN 0 ELSE valor END) debito,
(CASE WHEN valor <= 0 THEN 0 ELSE valor END) credito,
(debito - credito ) diferenca
from cobranca


Luciano Calenzani Simões





----- Mensagem original ----
De: Rubem Nascimento da Rocha <[EMAIL PROTECTED]>
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quarta-feira, 4 de Junho de 2008 9:36:52
Assunto: RE: Res: [delphi-br] Sintaxe SQL



Nem o SQL Server e nem o FireBird aceitam essa sintaxe! Se for pra SQL Server 
2005, eu faria assim:

select conta, descricao, valordeb, valorCred, valordeb - valorcred from
(select conta, descricao,CASE WHEN valor> 0 and cd = 'D' THEN 0 ELSE valor END 
valordeb,
CASE WHEN valor> 0 and cd = 'C' THEN 0 ELSE valor END valorCred,
(ValorDeb - ValorCred) as Diferenca
from lancamentos l, planocontas p
where l.codred = p.codred
and cliente = '1')

Sds.

____________ _________ _________ __

To: [EMAIL PROTECTED] os.com.br
From: simoesluciano@ yahoo.com. br
Date: Wed, 4 Jun 2008 04:07:21 -0700
Subject: Res: [delphi-br] Sintaxe SQL

select conta, descricao,
CASE WHEN valor> 0 and cd = 'D' THEN 0 ELSE valor END valordeb,
CASE WHEN valor> 0 and cd = 'C' THEN 0 ELSE valor END valorCred,
(ValorDeb - ValorCred) as Diferenca
from lancamentos l, planocontas p
where l.codred = p.codred
and cliente = '1'

Luciano Calenzani Simões

----- Mensagem original ----
De: Ioney Hotmail <[EMAIL PROTECTED] com>
Para: [EMAIL PROTECTED] os.com.br
Enviadas: Terça-feira, 3 de Junho de 2008 22:53:03
Assunto: [delphi-br] Sintaxe SQL

Ola Pessoal, eu tenho essa consulta que esta funcionando corretamente

select conta, descricao,
CASE WHEN valor> 0 and cd = 'D' THEN 0 ELSE valor END valordeb,
CASE WHEN valor> 0 and cd = 'C' THEN 0 ELSE valor END valorCred
from lancamentos l, planocontas p
where l.codred = p.codred
and cliente = '1'

agora eu quero criar uma outra coluna para diminuir o valordeb do valorcred
como fazer isso?

Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!
http://br.mail. yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]

____________ _________ _________ _________ _________ _________ _
Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
http://www.amigosdo messenger. com.br/    


      Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/

[As partes desta mensagem que não continham texto foram removidas]

Responder a