CREATE OR REPLACE FUNCTION FUNCTION1(ID IN NUMBER) RETURN NUMBER BEGIN SELECT COLUMN1, COLUMN2, COLUMN3 FROM TABLE1 WHERE COLUMN1<= Y AND (CASE WHEN ID < X THEN COLUMN1<COLUMN2 ELSE COLUMN2>COLUMN3 END), AND COLUMN 3 = XYZ; RETURN SOMETHING. END;
I know case statement does not return an expression but a value. How can i use some kind of "conditional statements" or something to return expressions ? I use to do it easily in mysql with "IF conditional" but i don't know how to do it in Oracle 11g.
EDIT: Does it work the same, not only for where statemen but for select ?