【发布时间】:2014-10-21 14:31:52
【问题描述】:
我目前正在使用以下方法从数据库中呈现 sql 行列表:
Sql sql = new Sql(dataSource)
def list = []
def index = 0
params.mrnaIds.each { mrnaName ->
sql.eachRow ("select value from patient_mrna where mrna_id=$mrnaId") { row ->
list[index] = row.value
index++
}
}
render list
但是我想避免在渲染它们之前将值分配给列表。
变量params.mrnaIds 来自多选输入,因此它可以是单个字符串或包含ID 的字符串数组。有没有办法在 eachRow 方法中遍历这些 id?
我希望能够执行以下操作:
render sql.eachRow ("select value from patient_mrna where mrna_id=?", params.mrnaIds) { row ->
list[index] = row.value
index++
}
但我不完全确定是否有一种方法可以使用此功能调用 eachRow。如果没有,是否有其他方法可以在不将结果存储在列表中的情况下呈现结果?
【问题讨论】: