Decoded Expression

A decoded expression uses the special DECODE syntax:

To evaluate this expression, Oracle compares expr to each search value one by
one. If expr is equal to a search, Oracle returns the corresponding result. If
no match is found, Oracle returns default, or, if default is omitted, returns
null. If expr and search contain character data, Oracle compares them using
nonpadded comparison semantics. For information on these semantics, see the
section"Datatype Comparison Rules".

The search, result, and default values can be derived from expressions. Oracle
evaluates each search value only before comparing it to expr, rather than
evaluating all search values before comparing any of them with expr.
Consequently, Oracle never evaluates a search if a previous search is equal to
expr.

Oracle automatically converts expr and each search value to the datatype of the
first search value before comparing. Oracle automatically converts the return
value to the same datatype as the first result. If the first result has the
datatype CHAR or if the first result is null, then Oracle converts the return
value to the datatype VARCHAR2. For information on datatype conversion, see
"Data Conversion".

In a DECODE expression, Oracle considers two nulls to be equivalent. If expr is
null, Oracle returns the result of the first search that is also null.

The maximum number of components in the DECODE expression, including expr,
searches, results, and default is 255.
Example

This expression decodes the value DEPTNO. If DEPTNO is 10, the expression
evaluates to 'ACCOUNTING'; if DEPTNO is 20, it evaluates to 'RESEARCH'; etc. If
DEPTNO is not 10, 20, 30, or 40, the expression returns 'NONE'.

DECODE (deptno,10, 'ACCOUNTING', 
20, 'RESEARCH', 
30, 'SALES', 
40, 'OPERATION',                     
'NONE') 


____________________Reply Separator____________________
Author: "Ruth Gramolini" <[EMAIL PROTECTED]>
Date:       9/11/2002 10:59 AM

Hello everyone,

I am having a senior moment and I have forgetten the syntax for 'decode'.
Can anyone give me a hint.  I have leant out my sql books and of course I
need them now.

Thanks in advance,
Ruth Gramolini
Oracle DBA, Vermont Department of Taxes

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Ruth Gramolini
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: 
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to