我在运行查询时遇到问题。我试着加入3个表格,以显示前10种药物在一年内的处方次数。
当我按原样运行它时,我会收到一条错误消息,说明聚合或选择中存在错误。
我的问题是:
Select Count(MED_ID), MEDICATIONS.MEDICATION_NAME, ENCOUNTER.OBSDATE
From MEDICATIONS
Inner JOIN ENC_MEDICATIONS On ENC_MEDICATIONS.MED_ID = MEDICATIONS.MED_ID
Inner JOIN ENCOUNTER On ENC_MEDICATIONS.ENC_ID = ENCOUNTER.ENC_ID
WHERE OBSDATE Between '01/01/2011' And '12/31/2011'
GROUP BY (MEDICATION_NAME)
ORDER BY COUNT(MED_ID) DESC
这是我的table模型:
我在连接中哪里出错,以得到我试图显示的结果。
谢谢!-安
2条答案
按热度按时间zmeyuzjn1#
我相信您正在寻找:
笔记:
OBSDATE
没有任何目的SELECT
,考虑到你想做什么。日期格式应使用iso/ansi标准。yyyy-mm-dd是此类格式中可读性最高的。
使用表别名!
限定所有列名!
nwo49xxi2#
诚然,在不进行测试的情况下,您需要添加第二个非聚合的groupby: