1

对象具有以下值:-

 valA   valB
  1      1
  1      3
  1      4
  1      5
  2      3
  2      6
  3      7

假设 valA 的不同值是 m,而 valB 是 n。(米<

  Objects.each do|var|
      X.where("a = ? AND b = ?",var.valA,var.valB).first

这会触发对 valA 和 valB 的每个值组合的查询。

我想触发一个查询来获取所有记录并处理它们。我该怎么做?

PS:在最坏的情况下,我可以触发 m 个查询,每个 valA 一个,并使用 IN 查询 valB 值。

编辑:- 目前,将为 valA 和 valB(此处为 7)的每个组合触发一个查询,并且将处理每个对象(X)。我只想触发一个查询(使用 valA 和 valB 的值元组或其他方法),以便从 X 中获取所有对象。

4

1 回答 1

1
X.select("MIN(id)").group("valA, ValB")
于 2012-09-28T10:50:23.993 回答