13 Oct 2009
CASE WHEN db_1.appl_no = ' '
THEN db_2.appl_no
ELSE db_1.appl_no END as Appl_nbr
Looks neater!
13 Oct 2009
No
CASE db_1.appl_no
WHEN ' '
THEN db_2.appl_no
WHEN NULL
THEN db_2.appl_no
ELSE db_1.appl_no END as Appl_nbr
If you look at the explain of a COALESCE, it is simply a short form of CASE.
21 Oct 2009
Hi ,
I think you can try below.
( COALESCE(NULLIF ( db_1.appl_no,'') ,db_2.appl_no)
regards,
rupesh
You must sign in to leave a comment.

I need to write a query, so that it returns the non-null value like the following,
COALESCE (db_1.appl_no, db_2.appl_no) as Appl_nbr
But, db_1.appl_no has both '?' and ' '
here the coalesce function takes '?' as Null, but returns the blank field ' ' assuming it to be Not Null.
so i change the query like the following,
COALESCE (CASE WHEN db_1.appl_no = ' '
THEN NULL
ELSE db_1.appl_no END , db_2.applno as appl.no) as Appl_nbr
Is there any other better way???
Pls help
-Thank you