GARANTIR DESCONTO

Fórum if dentro da pesquisa #55098

06/02/2006

0

Bem galera e o seguinte estou fazendo um procedure at ae td ok porem tenho que verificar se tem um determinado parametro ex

procedure....

...
..
select ....
queri colocar aqui
if paret=1 then
where else
where...

pois hoje tenho que criar varias procedures para isso e nao consigo reaproveita...

helpppppppppp...........


Sremulador

Sremulador

Responder

Posts

14/02/2006

Sremulador

help...


Responder

Gostei + 0

15/02/2006

Romulocpd

Acho que no FB 2.0 vai dar para colocar valor default para os parametros.

Dai eu faria assim:

CREATE PROCEDURE SP_TESTE (PCODIGO: INTEGER, PNOME: VARCHAR(30), PTELEFONE: VARCHAR(30) = ´SEM TELEFONE´)

Dai internamente vc poderia verificar. Eu fiz mesclando FB com SQL Server, mas a idéia é esta. No meu caso digamos que tenho uma stored para cadastrar produto. Se o parametro PFORNECEDOR vier zero entao sei que nao foi passado o fornecedor


Responder

Gostei + 0

15/02/2006

Emerson Nascimento

não dá pra fazer algo assim?
select
  ....
from
  ....
where
  (paret = 1 and CONDICOES PARA ESSE CASO)
  or
  (paret <> 1 and CONDICOES PARA ESSE OUTRO CASO)



Responder

Gostei + 0

15/02/2006

Sremulador

nao consigo desta maneira, ja tentei de tudo, e muito complicado...


Responder

Gostei + 0

15/02/2006

Emerson Nascimento

nos dê um exemplo mais preciso.


Responder

Gostei + 0

17/02/2006

Sremulador

tipo assim se o parametro = 1 entao ele processa o cod com um tipo de where caso outro where seja avaliado... isso dentro de um select...


Responder

Gostei + 0

18/02/2006

Rodolpho123

Vc não pode reescrever o seu select? Ex: se Param = 1 then [b:da7c66b0db]select where 1[/b:da7c66b0db], else [b:da7c66b0db]select where 2[/b:da7c66b0db]?


Responder

Gostei + 0

20/02/2006

Sremulador

hoje eu utilizo desta maneira porem a procedure fica gigante eu quero minimizar isso...


Responder

Gostei + 0

21/02/2006

Emerson Nascimento

você pode fazer uso de [b:c4e43d15e9]execute statement[/b:c4e43d15e9] (FB 1.5) ou fazer da forma que eu havia mostrado antes...


Responder

Gostei + 0

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

Aceitar