3

我的查询

 def myQuery = PublicTraining.executeQuery("SELECT  t.id, t.isSoldOut, t.course.ebPrice, t.offerPrice FROM PublicTraining t Where exists (from t.course.tracks AS tracks where tracks.id IN (1) )")

返回多个错误的记录

如果我将其更改为

 def myQuery = PublicTraining.executeQuery("SELECT  t.id FROM PublicTraining t Where exists (from t.course.tracks AS tracks where tracks.id IN (1) )")

它返回正确的结果集

为什么列的选择会改变这里的结果集?

4

1 回答 1

1
  1. 这两个查询都将返回多条记录。

  2. 您无法预测顺序,因为您没有应用非排序顺序。

  3. 第一个查询将返回 4 个元素的列表,而第二个查询将只返回 id 值列表

于 2013-10-04T17:30:06.067 回答