我在肯尼亞基蘇木的一家醫院中實施了openmrs 1.9.7版的本地實現。由於OpenMrs數據庫的複雜性,當我嘗試編寫查詢來訪問從數據庫收集的患者數據以進行數據管理時,會出現問題。自從我練習了一段時間後,我對sql也有點灰塵,但我很快就需要數據。 我有目前查詢是如下示例OpenMRS MySQL查詢從數據庫中讀取數據
SELECT p.date_created as date_enrolled, pi.identifier, pi.identifier_type identifier_type ,
pn.given_name,pn.middle_name, pn.family_name, p.person_id, p.gender, p.birthdate, p.death_date,
ob.obs_datetime, cm.name as obs_type, CASE co.datatype_id when '1' then ob.value_numeric
when '2' then (select name from concept_name where concept_id = ob.value_coded limit 1)
when '3' then ob.value_text when '6' then ob.value_datetime when '10' then ob.value_boolean when '13' then ob.value_complex else "N/A" END AS obs_value, e.encounter_datetime
FROM person p JOIN person_name pn ON p.person_id = pn.person_id
JOIN patient_identifier pi ON p.person_id = pi.patient_id
JOIN patient_identifier_type pit ON pit.patient_identifier_type_id = pi.identifier_type
JOIN obs ob ON p.person_id = ob.person_id JOIN encounter e ON e.encounter_id = ob.encounter_id
JOIN concept_name cm ON ob.concept_id = cm.concept_id
JOIN concept co ON ob.concept_id = co.concept_id
JOIN concept_datatype cdt ON cdt.concept_datatype_id = co.datatype_id;
有沒有用,我可以作爲首發使用,並可能修改,以適合我的需要已經存在的查詢? 或者更確切地說,你對我的建議是否最好通過這個?
謝謝
其實我錯過了內部化的部分,所以我從obs表中獲得了很多行數據,所以非常感謝。關於使用openmrs報告模塊,我已經在使用它了,但是我不得不從模塊中使用我自己的查詢,因爲我期望的聚合涉及的遠遠超過了報告模塊提供的操作。這些查詢在報告模塊中通過@rengaw進行使用 –