Kotlin 如何从Exposed中的QueryAlias映射count()值

Kotlin 如何从Exposed中的QueryAlias映射count()值,kotlin,kotlin-exposed,Kotlin,Kotlin Exposed,如何在Exposed中使用QueryAlias从ResultRow映射count()值 还是我做错了什么 val countAlias = EventTable.join(AttendeeEventTable, JoinType.INNER) .slice(EventTable.id, EventTable.id.count()) .selectAll() .groupBy(EventTable.id) .alias("countAlias") EventTab

如何在Exposed中使用QueryAlias从ResultRow映射count()值
还是我做错了什么

val countAlias = EventTable.join(AttendeeEventTable, JoinType.INNER)
    .slice(EventTable.id, EventTable.id.count())
    .selectAll()
    .groupBy(EventTable.id)
    .alias("countAlias")

EventTable
    .join(countAlias, JoinType.LEFT, EventTable.id, countAlias[EventTable.id])
    .selectAll()
    .map {
         Event(
               id = it[EventTable.id].value,
               name = it[EventTable.name],
               countOfAttendeees = it[countAlias[EventTable.id.count()]],  //Not working. How to get the count() from ResultRow
              )
         }

只需在查询之前定义一个计数“列”。以下是一个例子:

        val count = FooTable.status.count().alias("count")

        FooTable
            .slice(FooTable.status, count)
            .selectAll()
            .groupBy(FooTable.status)
            .map {
                FooCount(
                    it[FooTable.status],
                    it[count]
                )
            }

如您所见,我创建了一个值
count
,然后在
切片
选择中以及稍后的行映射中使用它