【发布时间】:2013-01-23 01:51:11
【问题描述】:
我想在Symfony2.1和Doctrine.中实现特定用户的好友列表
让我们说朋友表:
User1 User2 Status //0-pending request,1-accepted
A B 0
A C 1
D A 1
E A 1
现在我想在列表中获取A 的朋友姓名。对于这个SQL 查询,可以使用UNION 来实现,正如在许多其他答案中所读的那样。但我想在doctrine query builder. 中实现这一点
一种选择是分别查询两列并将结果和排序结合起来。但这需要更多时间来执行并获得结果。我想尽快得到快速响应。有什么方法可以查询吗?
【问题讨论】:
-
这并不是实现好友列表的最佳方式,因为您的“好友”对象将有一个方向(这将导致您稍后在查询中编写大量条件)。考虑实现
FriendshipUser关联,每个友谊恰好有 2 个用户(在应用程序级别受到限制) -
没错! @JeanValjean 已经提到过。但我想保持请求未决或已接受等状态。所以我实现了这种方式
标签: symfony doctrine-orm symfony-2.1