Oracle函数中将参数放在模糊查询中


--diagnosis_name like '%'||diagnosis_names||'%'

create or replace function asdf(MIN_DATE IN varchar2, MAX_DATE IN varchar2,diagnosis_names varchar2) return number as--XXX诊断出院人数 不含死亡
cyzrc_by_zd number;
begin
SELECT count(*) INTO cyzrc_by_zd from pat_visit a left join diagnosis b on a.patient_id=b.patient_id and a.visit_id=b.visit_id
where diagnosis_code in (select diagnosis_code from diagnosis_dict where diagnosis_name like '%'||diagnosis_names||'%')
and a.discharge_date_time>=to_Date(MIN_DATE,'yyyy-mm-dd') and a.discharge_date_time<to_Date(MAX_DATE,'yyyy-mm-dd')+1;
return cyzrc_by_zd;
end asdf;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM