From b04608c383973395dc96e3688cf36a23a8c61312 Mon Sep 17 00:00:00 2001 From: Jacopo Notarstefano Date: Thu, 20 Jun 2019 13:33:37 +0200 Subject: [PATCH] Build LIMIT only if size is strictly positive --- .../kotlin/org/jetbrains/exposed/sql/vendors/Default.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/exposed/src/main/kotlin/org/jetbrains/exposed/sql/vendors/Default.kt b/exposed/src/main/kotlin/org/jetbrains/exposed/sql/vendors/Default.kt index 71e0d866c7..93adfd2932 100644 --- a/exposed/src/main/kotlin/org/jetbrains/exposed/sql/vendors/Default.kt +++ b/exposed/src/main/kotlin/org/jetbrains/exposed/sql/vendors/Default.kt @@ -107,7 +107,14 @@ abstract class FunctionProvider { open fun replace(table: Table, data: List, Any?>>, transaction: Transaction): String = transaction.throwUnsupportedException("There's no generic SQL for replace. There must be vendor specific implementation") - open fun queryLimit(size: Int, offset: Int, alreadyOrdered: Boolean) = "LIMIT $size" + if (offset > 0) " OFFSET $offset" else "" + open fun queryLimit(size: Int, offset: Int, alreadyOrdered: Boolean) = buildString { + if (size > 0) { + append("LIMIT $size") + if (offset > 0) { + append(" OFFSET $offset") + } + } + } open fun groupConcat(expr: GroupConcat, queryBuilder: QueryBuilder) = buildString { append("GROUP_CONCAT(")