【问题标题】:Alias for an aggregate column聚合列的别名
【发布时间】:2019-04-18 19:50:42
【问题描述】:

我想使用 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 上没有看到很多公共方法。

【问题讨论】:

    标签: kotlin orm kotlin-exposed


    【解决方案1】:

    试试这个。 首先将平均值保存到变量中

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

    然后得到这样的结果

    val result = MyTable.slice(
                    avgColumn
            ).selectAll().first()
    
    val avg = result[avgColumn]
    

    【讨论】:

      猜你喜欢
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-20
      • 1970-01-01
      • 2017-06-09
      • 2016-11-29
      • 2021-12-24
      相关资源
      最近更新 更多