田 琪
廣州市衛生信息中心,510180 廣東 廣州
醫院的管理離不開數據的支撐。醫院信息系統繁多,數據結構復雜,維度多面,普通的報表制作效率低,多為月報、年報,已不能滿足現代醫院的快速發展需求。醫院信息化建設使醫院統計工作模式也不斷發生改變,既定的信息系統,可以查詢及獲取固定的數據,然而實際工作中,對數據的需求不是一成不變的,變動的需求增加了統計工作的難度。數據庫具有數據結構化、共享性高及統一管理和控制的特點[1]。在實際統計工作中,筆者建立了一套基于數據中心的衛生統計工作模式,通過建立數據庫,針對不同的統計需求,編寫對應的SQL腳本,達到快速、準確、可循環地解決實際問題,提高統計工作效率,更好地為醫院管理者提供統計信息資料及決策依據。
工作模式流程見圖1。
本文以Microsoft SQL Server 2008 R2 為例,新建本地數據庫,命名為“醫院統計數據庫”,將《廣東省醫療機構病案統計管理系統》后臺數據庫中的報表數據及醫院HIS系統查詢的報表分別導入其中,具體表格結構見表1。

圖1 衛生統計工作模式流程

表1 醫院統計數據庫數據結構表
數據內容不限于表1所列出的,可根據實際開展的統計工作進行添加,如開展重點專科工作、績效考核工作等。這些都可以將相應的數據導入數據庫,建立對應的數據表格式結構。
數據庫日常維護中,數據庫中報表的數據需要不斷更新,需要查詢、刪除、更新、插入等操作。
建立select查詢腳本可以獲取我們需要的具體指標數值,如查詢2018年3月份全院出院人數,可編寫腳本:(select fout from tzyhospitalworkreport where freportdatestr=’2018-03’ and ftykh=’ TZYQY’),其中,fout 代表出院人數, freportdatestr=’2018-03’ 代表出院日期為2018年3月,ftykh=’ TZYQY’ 代表科號等于TZYQY,即全院的科號。
若插入新的數據,則需要將新數據與原來的數據進行合并,如將某月(2018年3月)新匯總的醫院工作報表(門診部分)數據添加到數據庫tmzhospitalworkreport表中,可編寫腳本:(merge tmzhospitalworkreport as A using [0tmzhospitalworkreport〗 as C on (A.freportdatestr=C.freportdatestr) when not matched then insert values ([FID],[FREPORTCODE],[FREPORTDATESTR],[FTYKH],[FKSNAME],[FZLRC],[FMZZLRC],[FMZZLRCZJ],[FJZZLRC],[FJZZLRCDEAD],[FCAR],[FHOMESERVER],[FOTHER],[FGCSPATIENT],[FGCSDEAD],[FJZWZQJRC],[FJZWZQJSUCC],[FJZWZQJSUCCPER],[FJKJC],[FJZSS],[FAVERMJZ],[FREMARK],[FPX]) Output $Action,inserted.*;),其中,[0tmzhospitalworkreport]表為需要新數據表的表名,腳本通過判斷日期是否存在,若不存在,則將表[0tmzhospitalworkreport]的數據合并入本地數據庫。
醫院統計工作包含數據查詢、數據質控、數據分析等過程,在已建立的醫院統計數據庫的基礎上,編寫相應的SQL統計腳本,可以高效地解決統計工作中存在的問題。
對于每月固定需要制作的統計報表,可以在數據庫中創建存儲,而由于存儲過程不像解釋執行的SQL語句那樣,在提出操作請求時才進行語法分析和優化工作,運行效率高,提供了在服務器端快速執行SQL語句的有效途徑。也不需要每次輸入冗長的SQL語句[2-3,7-8]。
例如醫院每月會對醫療業務數據進行統計分析,主要與上年同期進行對比,通過增減幅、排序、累計下降次數及標準化對比進行分析。現以2018年3月數據為例,通過創建存儲(圖2)建立存儲過程,建立之后每月執行存儲過程mzrcbb(圖3)即可得出固定的統計報表。
例如病案首頁數據的質控,通過編寫SQL腳本,可以查出數據存在的問題,并予以改正,提高數據質量。病案首頁包含患者個人信息、疾病手術信息及費用信息等,是目前衛生系統提供決策支持的主要數據來源之一,數據質量尤為重要。病案首頁數據字段繁多,普通的手工質控效率較低,通過編寫SQL腳本進行完整性、規范性及邏輯性地評估,對審核通不過的數據在上報前進行更正,從而保證數據的準確性[4,6]。
針對患者身份證信息登記錯誤,可以在醫院統計數據庫通過以下SQL腳本查詢得出:
DECLARE @CYSJ1 VARCHAR(12)
DECLARE @CYSJ2 VARCHAR(12)
SET @CYSJ1=′2017-01-01′
SET @CYSJ2=′2017-12-31′
select fsry 輸入員,fprn as 病案號,ftimes as 住院次數,fname as 姓名,fage
年齡,fcountry 國籍,fcydept as 出院科室,fidcard as 身份證號,error=′身份證號填寫錯誤′,from tpatientvisit where fcydate >= @CYSJ1 and fcydate <= @CYSJ2 and fage not like′D%′ and fage not like ′m%′ and substring(fage,2,4) >18 and fname not like′%無名氏%′ and fcountry =′中國′ and len(fidcard)!=15 and len(fidcard)!=18

圖2 創建存儲

圖3 執行存儲
醫院統計分析報告,是管理者決策的依據之一。統計分析報告是對現階段運營狀況以數據、圖表及文字形成的報告,反映醫院經濟情況及醫療質量,分析其影響和形成原因等[9]。醫院的統計分析報告一般分為月度、季度及年度,相對固定的統計分析報告,可以通過數據庫建立可重復性操作的工作模式。例如每月需要撰寫一份統計分析報告,制定分析報告的內容尤其重要,主要分門急診、醫技、住院及收入這幾方面進行分析,每一方面都確定相應的統計指標。如住院工作方面,會通過床位使用率、平均住院日、床位周轉次數等進行描述性統計分析[5]。
制作統計分析報告前,需將所有使用的指標匯編成數據結構表,包含指標名稱、字段名、所屬類別及來源。部分指標數據結構如表2所示。
制定出指標數據結構表后,編寫SQL統計腳本(圖4),在分析報告模板上導入統計指標數據,輸入后分析報告見圖5及圖6。
醫療衛生統計工作中,基于數據庫管理的醫院統計工作模式,統一管理及調用數據,利用數據庫表與表間的交互作用,解決繁瑣的數據處理過程,提高數據處理及統計效率,形成統計工作標準操作準則(SOP),及時準確地為醫院管理者提供數據及統計分析報告。

表2 統計分析報告指標結構表

圖4 編寫SQL腳本及統計指標

圖5 分析報告模板

圖6 分析報告初稿
[1] 王珊,薩師煊.數據庫系統概論[M].北京:高等教育出版社,2006.
[2] 屠海波.應用SQL語言進行數據查詢與統計[J].中國衛生統計,2007,24(4):424-425.
[3] 吳曉云,鄭銀雄,馮笑玲.基于數據庫的醫院病案信息SQL查詢[J].中國衛生統計,2014,31(1):144.
[4] 許澤杰,丁贊.運用SQL語言對病案首頁數據質量進行監控的實例分析[J].中國衛生統計,2018,35(3):1-2.
[5] 王芳,宋蓉.醫院統計分析要抓好五方面工作[J].中國醫院統計.2017,24(2):159-160.
[6] 顧曉鳴.運用Select編寫鎖定警示語句審核病案首頁信息[J].中國醫院統計,2008,15(2):117-119.
[7] 周琴.掌握SQL查詢提高統計效率[J].中國醫院統計.2008,15(2):100-101.
[8] 劉冬生,歐陽菊香,王爾笑,等.基于SQL的重點疾病和重點手術查詢統計[J].中國衛生統計,2015,32(5):863-864.
[9] 李向紅,高月華.提高醫院統計工作質量 促進醫院科學管理水平[J].中國衛生統計,2011,28(3):352.