如何在HAPI FHIR中用反向链+AND操作查询指定日期有空闲Slot的Schedule?
解决方案
你的问题出在两个独立的_has条件是**逻辑或(OR)关系,只要Schedule关联的Slot满足其中一个条件就会被返回。要实现“存在同时满足指定日期和空闲状态的Slot”的逻辑,需要把两个条件合并到同一个_has查询中,让它们成为逻辑与(AND)**关系。
正确的查询语句
/Schedule?_has:Slot:schedule:(start=2023-12-06,status=free)
补充说明
- 括号内的
start=2023-12-06和status=free会被视为同一个Slot需要同时满足的条件,确保返回的Schedule至少关联一个2023-12-06当天且状态为free的Slot。 - 如果你的
start字段是带时间戳的完整日期时间(比如2023-12-06T09:00:00),需要用范围查询精准匹配当天的所有时段:/Schedule?_has:Slot:schedule:(start=ge:2023-12-06,start=le:2023-12-06T23:59:59,status=free)
内容的提问来源于stack exchange,提问作者Eduarda Menezes
相关产品推荐
相关产品推荐

