View Single Post

   
  #4 (permalink)  
Old 04-24-2008, 06:17 PM
On Web
 
Posts: n/a
Default Re: [Info-Ingres] changing result of select query in tablefield

"Martin Bowes" <martin.bowes@ctsu.ox.ac.uk> wrote in message
news:mailman.174.1208856038.2607.info-ingres@kettleriverconsulting.com...
> Hi Metman,
>
> It looks like you need a simple case statement...
>
> select val1,
> case val2 when 'SOS' then 'Is good on pies'
> when 'PTO' then 'Please Turn Over'
> when 'ET' then 'phone home'
> else 'I dont know'
> end as val2,
> val3
> from tbl
>
> Martin Bowes


While it does solve the immediate problem, I would consider it bad practice
because it means that whenever the data is updated with a new abbreviation,
the SQL code will also have to be updated.

As mentioned previously, the better solution is a join to a table where the
expanded abbreviation is available.

Paul

> -----Original Message-----
> From: info-ingres-bounces@kettleriverconsulting.com
> [mailto:info-ingres-bounces@kettleriverconsulting.com] On Behalf Of
> metman
> Sent: 21 April 2008 17:20
> To: info-ingres@kettleriverconsulting.com
> Subject: [Info-Ingres] changing result of select query in tablefield
>
> Hi
>
> I have a tablefield which gets its values from a select query, eg
>
> tblField = select val1, val2, val3
> FROM tbl1
>
> My problem is that in the table tbl1, val2 has 3 different values in
> it which are abbreviations. On my tablefield however, i need to
> display the whole thing. EG in tbl1, val2 can be SOS, PTO or ET. If
> the select query returns PTO for val2 then i would need to display
> Please Turn Over.
>
> Hope this makes sense and any help would be appreciated!
> _______________________________________________
> Info-Ingres mailing list
> Info-Ingres@kettleriverconsulting.com
> http://www.kettleriverconsulting.com...fo/info-ingres
>



Reply With Quote