Fix order by and limi/offset incorrect order
Go Tests / test (push) Successful in 1m5s

This commit is contained in:
2026-06-05 17:46:20 +02:00
parent 238361b066
commit 90d7bf7226
2 changed files with 49 additions and 9 deletions
+9 -9
View File
@@ -86,6 +86,15 @@ func (s *Select[T]) execute(conn *simpleorm.DBConnection, tx *sql.Tx) error {
dml += " WHERE " + s.whereStmt
}
if len(s.ordering) > 0 {
orderBy, err := s.target.GetOrderByDML(s.ordering...)
if err != nil {
log.LogError("Failed to create ORDER BY part: %s", err)
} else {
dml += orderBy
}
}
var effectiveArgs []any = s.args
if s.limit != -1 {
dml += " LIMIT ?"
@@ -97,15 +106,6 @@ func (s *Select[T]) execute(conn *simpleorm.DBConnection, tx *sql.Tx) error {
effectiveArgs = append(effectiveArgs, s.offset)
}
if len(s.ordering) > 0 {
orderBy, err := s.target.GetOrderByDML(s.ordering...)
if err != nil {
log.LogError("Failed to create ORDER BY part: %s", err)
} else {
dml += orderBy
}
}
log.LogInfo("Preparing sql: %s", dml)
log.LogDebug("Preparing sql: %s, with args: %s", dml, effectiveArgs)