聚合列的别名

Alias for an aggregate column

我想使用 Kotlin Exposed 获取列的平均值。

object MyTable: IntIdTable("MyTable") {
    val score = integer("score")

val result = MyTable.slice(
        MyTable.score.avg().alias("avg_points")
).first()

如何得到结果?

对于普通的列,我会使用

result[MyTable.score]

但现在它是一个带有别名的集合。我试过了

result["avg_points"]

但是那失败了。我在 ResultRow.

上没有看到很多 public 方法

试试这个。 先把平均值存到一个变量

val avgColumn = MyTable.score.avg().alias("avg_points")

然后得到这样的结果

val result = MyTable.slice(
                avgColumn
        ).selectAll().first()

val avg = result[avgColumn]