【发布时间】:2016-07-23 17:07:25
【问题描述】:
在使用 slick 3 的 postgresql 数据库中,最好的分页方式是什么?
- 获取所有行并使用 scala 进行分页(似乎效率不高)?
- 带限制和偏移的静态查询?
- 还有其他方法吗?
【问题讨论】:
标签: postgresql scala pagination slick
在使用 slick 3 的 postgresql 数据库中,最好的分页方式是什么?
【问题讨论】:
标签: postgresql scala pagination slick
您可以在TableQuery 对象上使用take 和drop 方法。它们将在生成的 SQL 查询中转换为 limit 和 offset:
val users: TableQuery[UsersTable] = UsersTable.query
val firstPartOfUsers = users.drop(0).take(25).result
val secondPartOfUsers = users.drop(25).take(25).result
这两个操作将被转换为以下 SQL 查询:
select "name", "email", "id" from "users" limit 25 offset 0
select "name", "email", "id" from "users" limit 25 offset 25
【讨论】: