【发布时间】:2017-02-28 20:32:54
【问题描述】:
我有 3 个表:user、role 和 pivot user_role。用户和角色之间存在多对多的关系。
还有一个细节,每个分配(用户角色)在user_role 表中都有timestamp,所以我可以找到最近为用户添加的角色。
是否有可能编写一个雄辩的查询来获取所有最近分配角色的用户,例如 id = 5?
我需要以某种方式从pivot 获取由timestamp 排序的最后一条记录,然后在whereHas 语句中使用它。但是如何获得最后一条记录呢?
编辑
感谢您的回答。但我想让这一切变得更复杂一些。如果我们添加表system,现在system和user之间将是一对多的关系,所以用户可以属于一个系统,系统可以有多个用户。
现在,如何获得例如system 的 id,其中包含最后一个角色 id = 5 的用户(与开头一样)。
【问题讨论】:
标签: php mysql laravel orm eloquent