如果你做不到,SQL 怎么做呢?
基本上我想选择我所有的问题对象,其中至少有两个具有相同的属性。可以说,该属性称为word_id
.
那么我如何只选择与另一个对象共享一次公共属性的所有对象呢?
如果我有三个对象:
# Question(id: 1, word_id: 1)
# Question(id: 2, word_id: 2)
# Question(id: 3, word_id: 2)
# Question(id: 4, word_id: 1)
# Question(id: 5, word_id: 1)
# Question(id: 6, word_id: 1)
我只想返回 id 2
,3
因为它们都共享一个共同的属性两次。
那可能吗?我粗略地通过对数据库进行两次调用来做到这一点,首先我调用所有有问题的对象,将它们添加到一个数组中,然后从该数组中减去符合我要求的对象。我只是好奇是否有一种更优雅的方式可以一次完成所有操作。