Kotlin 如何从Exposed中的QueryAlias映射count()值
如何在Exposed中使用QueryAlias从ResultRow映射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
还是我做错了什么
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
,然后在切片
选择中以及稍后的行映射中使用它