моего запросаGrails ExecuteQuery дает различные ResultSet на выбери
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))")
возвращает правильный результат установить
Почему выбор столбцов меняет результат?
Что произойдет, если запустить эти запросы в инструменте управления? Кроме того, вы можете попробовать поставить «logSql = true» в свой DataSource.groovy, чтобы увидеть, какой SQL фактически создается. –
Не могу написать ответ прямо сейчас, но я думаю, что результатом может быть многомерный массив (с одним уровнем, представляющим столбцы, а другой представляющий строки). Является ли длина массива возвратом вашего первого запроса 4? – Stephan