我创建了一个类似于以下内容的数据库:
TABLE:
PATIENT ID CONDITION DOCTOR DATE ADMITTED
PATIENT 1 CONDITION 1 DOCTOR 1 5/23/2011
PATIENT 2 CONDITION 1 DOCTOR 2 8/22/2011
PATIENT 3 CONDITION 2 DOCTOR 1 12/12/2010
TABLE2:
PATIENT ID CONDITION DOCTOR DATE CHANGED
PATIENT 1 CONDITION 4 DOCTOR 3 5/24/2011
PATIENT 1 CONDITION 3 DOCTOR 3 6/22/2011
PATIENT 2 CONDITION 1 DOCTOR 1 10/22/2011
我想在特定的日期得到条件和医生看起来像:(病人数量超过特定日期的病人数量)
DATE 5/1/2012 5/2/2012 5/3/2012
====================================================
CONDITION 1 5 2 1
CONDITION 2 2 1 2
在特定日期得到病情x的患者数量(例如(3例患者病情1,但1例患者在2012年1月1日得到病情1,因此它将产生1而不是3)
顺便说一句,我在ms-access上这样做。
答案 0 :(得分:0)
在联合查询上创建交叉表。
SELECT Condition, Doctor, [Date Admitted]
FROM [Table]
UNION
SELECT Condition, Doctor, [Date Changed]
FROM Table2
这会创建一个3列表,而不考虑是否存在任何等式。如果要限制任何条件,则必须在每个联合查询或交叉表查询本身中放置WHERE
语句