我对这一切都很陌生,所以要温柔:)。
我有大型医疗数据库,我需要根据选定的医生为患者提取数据。
现在我建立了一个病人名单
SELECT patID
FROM appointments
WHERE docID IN ('docid1', 'docid2', ..... , 'docidn')
Run Code Online (Sandbox Code Playgroud)
一旦我得到我的病人名单,我就会在从一大堆病人相关的表格中提取数据时使用它。
根据我最初的医生名单,我最终可以得到超过 20,000 名的患者名单。系统中的患者总数接近 1,000,000。
然后我拿我的病人名单开始从其他表中获取数据,或多或少是这样的
Select *
FROM xrays
WHERE patID IN ('patid1', 'patid2', 'paid3',....., 'patidn' )
Run Code Online (Sandbox Code Playgroud)
我根据第一部分中的列表构建了 patids 列表。
可以想象,对于 20,000 名患者列表,上述查询需要很长时间。
关于更好的方法的任何建议?