在Slick中的一列中查询一行具有最大值

时间:2015-07-04 16:57:42

标签: scala slick slick-3.0

在我看来,这似乎是一个简单的问题,但我仍然试图找到一个好的解决方案。 我正在使用Slick 3.0。 我想查询表中的一行,该表在一列中具有最高值。但我不想只有最高价值(这很简单),我希望拥有整行。 我试了一些东西,比如先查询最大值,然后用这个最大值过滤,但没有编译或看起来合适。 我希望有这样的方法:

table.maxBy(_.columnName)

但我没有找到这样的方法。 那么做这样的事情最喜欢的方式是什么?

1 个答案:

答案 0 :(得分:4)

这样做的方法是使用此查询:

table.sortBy(_.columnName).take(1).result

不幸的是,它会产生未优化的SQL(但正确)。报告并修复了Issue,它将在3.1.0中发布。