diff --git a/src/sql.ts b/src/sql.ts index 043fa29..2dec426 100644 --- a/src/sql.ts +++ b/src/sql.ts @@ -15,6 +15,15 @@ const appendCurrentVariableToQueryFn = currentQueryPart: string, currentQueryPartIndex: number, ): AccumulatedQueryState => { + const isLastQueryPart = currentQueryPartIndex === numberOfQueryParts - 1 + if (isLastQueryPart) { + return { + currentVariableIndex: acc.currentVariableIndex, + text: `${acc.text}${currentQueryPart}`, + values: acc.values, + } + } + const currentValue = queryPartValues[currentQueryPartIndex] if (isSqlFragment(currentValue)) { const { @@ -48,18 +57,12 @@ const appendCurrentVariableToQueryFn = text: `${acc.text}${currentQueryPart}${arrayVars}`, values: [...acc.values, ...currentValue], } - } else if (currentQueryPartIndex < numberOfQueryParts - 1) { + } else { return { currentVariableIndex: acc.currentVariableIndex + 1, text: `${acc.text}${currentQueryPart}$${acc.currentVariableIndex}`, values: [...acc.values, currentValue], } - } else { - return { - currentVariableIndex: acc.currentVariableIndex, - text: `${acc.text}${currentQueryPart}`, - values: acc.values, - } } }