我正在尝试使用 jugglingdb (和 mysql 适配器)来获取患者列表。我们的模式设置为患者必须是用户,但用户不必是患者。这意味着 Patient 有一个 userId,而 User 表保存着患者的姓名。
Patient
id
userId
User
id
givenName
familyName
middleInitial
创建初始页面时,我们只是用来Patient.all
抓取结果,并patient.user(...
抓取用户对象/用户名。这适用于少量记录,但不适用于数千条记录。
只有在 Patient 表中引用了他们的 id 时,我如何获取用户列表?mysql查询示例:
SELECT * FROM User WHERE id IN (SELECT id FROM Patient) AND familyName LIKE '%doe%';
我已经浏览了一段时间的jugglingdb-mysql 适配器并没有找到理想的解决方案,否则,这个问题是我迄今为止找到的唯一其他解决方案。
我可以使用的另一种选择/查询是在 Patient 和 User 之间创建一个内部连接,然后过滤结果:
SELECT Patient.id
,User.familyName
FROM Patient
INNER JOIN User ON Patient.userId = User.id
WHERE User.familyName LIKE '%doe%';
但同样,我还没有找到使用 jugglingdb 连接的解决方案。