我有一张表如下
Table
id busid stopid
1 1 1
2 2 1
3 3 1
4 1 2
5 2 2
6 4 2
一列有总线ID,另一列有停止ID。例如,如果我想从A站到B站乘坐公共汽车,我自然会尝试找到从A站到B站的所有公共巴士。
我的方法
因此,例如,如果我想找到从停止1到停止2的所有bues。我可以清楚地看到busid 1和busid 2将是正确的答案。
所以基本上我想得到所有的busid,其中stopid = 1和stopid = 2.
我被困在如何在rails中执行此查询。
例如,如果我做Table.where(“stopid =?AND stopid =?”,1,2) 这是无效的。所以我想知道上面描述的查询的正确方法是什么?我看过here,但没有找到任何类似的例子。
答案 0 :(得分:2)
尝试
Table.where(stopid: [1,2]).pluck(:busid)
它将生成如下查询:
SELECT busid FROM tables WHERE (tables.stopid IN (1,2))