Colocar IF no SELECT

27/04/2007

0

Galera, bom dia..

Preciso de uma ajuda urgente...

Estouo precisando colocar um IF na minha consulta ...
Alguem saberia qual a sintaxe correta pra colocar ...

Tentei assim mas dá erro de sintaxe :


[b:adb0838679]select if(ealunos.lingua=1, ´A´, ´B´ ) Lingua

from ealunos a, emataluno b
where
a.mataluno=b.mataluno
and a.codcoligada=b.codcoligada[/b:adb0838679]


Alguem pode me ajudar com urgencia ????

Ja agradeço...

Guilherme Cattoni...........


Gcattoni

Gcattoni

Responder

Posts

27/04/2007

Wagner Reatto

sugiro que você utilize CASE


SELECT CASE
FC_DATA,
WHEN FC_ESTOQUE = ´0001´ THEN ´É ISSO AI´
ELSE ´MAUS!´
END
FROM dbo.tblFC

Galera, bom dia.. Preciso de uma ajuda urgente... Estouo precisando colocar um IF na minha consulta ... Alguem saberia qual a sintaxe correta pra colocar ... Tentei assim mas dá erro de sintaxe : [b:da7340ec22]select if(ealunos.lingua=1, ´A´, ´B´ ) Lingua from ealunos a, emataluno b where a.mataluno=b.mataluno and a.codcoligada=b.codcoligada[/b:da7340ec22] Alguem pode me ajudar com urgencia ???? Ja agradeço... Guilherme Cattoni...........



Responder

27/04/2007

Gcattoni

Não dá pra ser com case porque, essa condição se for verdadeira vai rodar um select que soma o resultado de outros select, se for falso vai rodar um select que soma o resultado de outro select ...

exemplo:


SELECT

(
SELECTN.P20
fromEALUNOTPR N
WHEREN.PERLETIVO = MC.PERLETIVO
ANDN.CODETP = MA.CODETP
ANDN.CODTUR = MC.CODTUR
ANDN.CODCOLIGADA=MC.CODCOLIGADA
ANDN.CODMAT = [b:4c81588fed]05[/b:4c81588fed]
ANDN.MATALUNO = MC.MATALUNO
)BIOLOGIA_PROVA2,


[color=red:4c81588fed](select if(ealunos.lingua=1, ´A´, ´B´ ) Lingua
THEN[/color:4c81588fed]

(
SELECTsum(N.P20)
fromEALUNOTPR N
WHEREN.PERLETIVO = MC.PERLETIVO
ANDN.CODETP = MA.CODETP
ANDN.CODTUR = MC.CODTUR
ANDN.CODCOLIGADA=MC.CODCOLIGADA
ANDN.CODMAT in [color=red:4c81588fed][b:4c81588fed](05,60)[/b:4c81588fed][/color:4c81588fed]
ANDN.MATALUNO = MC.MATALUNO
)TOT

[color=red:4c81588fed]ELSE [/color:4c81588fed]

(
SELECTsum(N.P20)
fromEALUNOTPR N
WHEREN.PERLETIVO = MC.PERLETIVO
ANDN.CODETP = MA.CODETP
ANDN.CODTUR = MC.CODTUR
ANDN.CODCOLIGADA=MC.CODCOLIGADA
ANDN.CODMAT in [color=red:4c81588fed][b:4c81588fed](05,59)[/b:4c81588fed][/color:4c81588fed]
ANDN.MATALUNO = MC.MATALUNO
)TOT

[color=red:4c81588fed]END),[/color:4c81588fed]



FROM .....



minha situação é essa .....
Se algume puder me ajdar ....

Obrigado,

Guilherme


Responder

27/08/2007

N_informatica

E amigão já sofri muito com o RM em uma faculdade em q trabalhei, o Banco deles é meio complicado mesmo.

Mas faz o seguinte me passa as estruturas das tabelas e o que realmente quer fazer q vou ver se posso te ajudar.

Já utilizei muito essa ealumuos, mataluno e outras....rsrs..

Estou aguardando


Responder

27/08/2007

Emerson Nascimento

não entendi o IF...
explique melhor o que você precisa


Responder

27/08/2007

Knight_of_wine

Sugiro que você crie uma Stored Procedure, ou implemente isso na linguagem que você utiliza.

Creio que é a melhor solução.


Responder

29/08/2007

Emerson Nascimento

e aí... resolveu o problema?


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar