create table TEST_TEMP (NAME varchar(64), BIRTHDATE date);
insert into TEST_TEMP values ('123', to_date('1990-01-03', 'YYYY-MM-DD'));
insert into TEST_TEMP values ('456', to_date('1999-02-03', 'YYYY-MM-DD'));
insert into TEST_TEMP values ('789', to_date('1990-03-03', 'YYYY-MM-DD'));
insert into TEST_TEMP values ('987', to_date('1999-04-03', 'YYYY-MM-DD'));
CREATE VIEW TEST AS
SELECT * FROM TEST_TEMP OFFSET 0 ROWS FETCH NEXT 3 ROWS ONLY;
create or replace view TEMP_COUNT1 as
SELECT
tbl."NAME",
CASE
WHEN EXTRACT(DAY FROM BIRTHDATE) IN (5, 12, 19, 26) AND 'false'='false' THEN 1
WHEN EXTRACT(DAY FROM BIRTHDATE) NOT IN (5, 12, 19, 26) AND 'false'='false' THEN 0
ELSE 1
END AS IS_CONTROL_GROUP
FROM TEST tbl;
with function e(p_sql in varchar2) return clob
as
result clob;
begin
dbms_utility.expand_sql_text(p_sql, result);
return result;
end;
select e('select count(*) from test') from dual
/