Fórum Erro na consulta SQL #294596

05/09/2005

0

o q esta errado nessa consulta ?

select * from tbordem where PREPARADOR and AUXILIAR = ´JOAO´


Quero q o resultado me de os dados de todas as vezes que o joao foi preparador e todas as vezes q ele foi auxiliar.

Obrigado


Geisonc

Geisonc

Responder

Posts

05/09/2005

Mdm

Bom se consegui entender direito vc esta tentando fazer 2 comparações ao mesmo tempo.

select * from tbordem where PREPARADOR = ´JOAO´ 
  and AUXILIAR = ´JOAO´


oe seja para cada campo vc devera fazer uma expressão.


Responder

Gostei + 0

05/09/2005

Gandalf.nho

Tente assim:

select * from tbordem where PREPARADOR = ´JOAO´ 
or AUXILIAR = ´JOAO´



Responder

Gostei + 0

05/09/2005

Geisonc

Obrigado, deu certo das duas maneiras, porem, peço a ajuda novamente.
Existe o campo preparador e o campo auxiliar.

nesses dois campos vão nomes variados, porem quero q meu relatorio mostre quando foi q o nome joao é auxiliar e quando foi que o nome joao preparador, ta aí akela consulta q vcs me ajudaram, deu certo, mas como eu faço para mostrar no relatório acima se o cara foi o preparador ou se foi o auxiliar ? sendo q sao 2 campos distintos e no relatorio sera apenas um mostrando se ele é preparador ou auxiliar ? tem jeito de fazer isso em sql ??


muito obrigado mesmo !


Responder

Gostei + 0

05/09/2005

Steve_narancic

Se você estiver utilizando Firebird 1.5 tente algo com CASE acho que fica mais ou menos assim


select
CASE WHEN CAMPO1 is null
 THEN CAMPO2
 ELSE CAMPO1
 end
from tabela



Responder

Gostei + 0

08/09/2005

Geisonc

nao estou usando firebird, coloquei uma query para fazer a consulta... ficou assim:

dm.QueryOrdem.SQL.Clear;
dm.QueryOrdem.SQL.Add(´select * from tbordem where PREPARADOR = "´+ NOME + ´" or AUXILIAR = "´ + NOME +´"´);
dm.QueryOrdem.Open;



agora, gostaria de saber como eu faço, em SQL e na mesma instrução acima, isso: SE o campo preparador for igual a NOME faça qr1.caption:=´P´;

.... nao manjo muito de sql..... se puderem me ajudar agradeço !


Responder

Gostei + 0

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

Aceitar