การรวบรวมข้อมูลจากตารางที่แตกต่างกันเป็นแบบฝึกหัดหรือไม่
พื้นหลัง ฉันเขียนรายงานขนาดใหญ่จำนวนมากและโดยทั่วไปแล้วรักษาฐานข้อมูลสุขภาพขนาดใหญ่ (เขียน SP, ฟังก์ชั่น, งาน, ฯลฯ ) สคีมาดั้งเดิมและซอฟต์แวร์ที่ใช้นั้นมาจากผู้จำหน่ายรายอื่นดังนั้นฉันจึงไม่สามารถเปลี่ยนแปลงโครงสร้างได้มากนัก มีบันทึกมากมายที่ต้องมีการติดตามเช่นห้องปฏิบัติการขั้นตอนวัคซีน ฯลฯ และพวกมันกระจัดกระจายไปทั่วโต๊ะหลายสิบแห่งซึ่งหลายแห่งถูกป่องและจัดทำดัชนีไม่ดี (ฉันสามารถแก้ไขปัญหานี้ได้บ้าง) ปัญหา ปัญหาคือเนื่องจากเรามีการควบคุม DB น้อยและเนื่องจากสามารถเปลี่ยนแปลงได้จากการอัพเดทหรือแพทช์ใด ๆ ทำให้การเขียนและการบำรุงรักษารายงานเหล่านี้ยากและน่าเบื่อโดยเฉพาะอย่างยิ่งเมื่อมีการทับซ้อนกันจำนวนมาก สิ่งที่ต้องทำคือแพทช์เดียวและฉันติดเขียนส่วนใหญ่ของรายงานโหล นอกจากนี้เคียวรีกลายเป็นสับสนและช้าลงเมื่อการรวมซ้อนเลือกและซ้อนกัน "ทางออก" ของฉัน แผนของฉันคือการเขียนระเบียนทั้งหมดเหล่านี้ลงในตาราง "catch-all" หนึ่งตารางและเขียนทริกเกอร์บนตารางดั้งเดิมเพื่อรักษาระเบียนในตารางรวมนี้ แน่นอนฉันต้องมั่นใจว่าตัวกระตุ้นของฉันยังคงอยู่หลังจากการอัพเดต แต่จะง่ายกว่ามากจากมุมมองการบำรุงรักษาและเพียงแค่อ้างอิงข้อมูล ตารางจะบางและยาวเก็บเฉพาะข้อมูลที่ต้องการเช่นนี้: CREATE TABLE dbo.HCM_Event_Log ( id INT IDENTITY, type_id INT NULL, orig_id VARCHAR(36) NULL, patient_id UNIQUEIDENTIFIER NOT NULL, visit_id UNIQUEIDENTIFIER NULL, lookup_id …