Re: Using expressions w/ DECODE?

From: Henk-Jan Visscher <visscher_at_aedius.com>
Date: 2000/08/01
Message-ID: <8m5t1m$bro$1_at_news1.xs4all.nl>#1/1


louster_at_my-deja.com wrote in <8m4v6k$kr7$1_at_nnrp1.deja.com>:

>I'd like to write a sql statement labeling users to my website
>as "active", "frequent" or "power" depending on how many times they've
>logged in. Oracle SQL doesn't have an IF-THEN statement and DECODE
>doesn't let you use expressions (eg. < 5 logins = 'active user',
>5>logins>25 = 'active user', > 25 logins = 'power user'). I was
>thinking of getting 3 result sets and using UNION to combine them but
>the query is very expensive. There has got to be a way to do this. Any
>ideas?

select decode (sign (logins - 25), 1, 'power user',

         decode (sign (logins - 5), 1, 'active user', 'frequent user')) from table_with_a_logins_column
/

Greetings,
Henk-Jan Visscher.

visscher_at_aedius.com Received on Tue Aug 01 2000 - 00:00:00 CEST

Original text of this message