Subject Re: [firebird-support] change field depending variables
Author Martijn Tonies
> >> Pseudo code:
> >>
> >> declare field varchar( 20 );
> >>
> >> if ( :question = 'y' ) then field='Field1';
> >> if ( :question = 'n' ) then field='Field2';
> >>
> >> select :field from Table_a where Field2 = '1' into :answer.
> >>
> >> Please can anyone tell me how to do this???
> >
> > Take a look at EXECUTE STATEMENT in the Firebird
> > 1.5 release notes.
>
> why not something like
>
> SELECT CASE
> WHEN :QUESTION = 'Y' THEN Field1
> WHEN :QUESTION = 'N' THEN Field2
> ELSE NULL
> END as MyField
> from Table_a where Field2 = '1' into :answer

If it works, it works :-)

> I just thought EXECUTE STATEMENT ought to be avoided when possible.

Martijn Tonies
Database Workbench - development tool for Firebird and more!
Upscene Productions
http://www.upscene.com
My thoughts:
http://blog.upscene.com/martijn/
Database development questions? Check the forum!
http://www.databasedevelopmentforum.com