diff --git a/internal/statements/order_by.go b/internal/statements/order_by.go index 61742ff9..49ba1fc5 100644 --- a/internal/statements/order_by.go +++ b/internal/statements/order_by.go @@ -118,11 +118,14 @@ func (statement *Statement) Desc(colNames ...string) *Statement { } for _, colName := range colNames { ob := orderBy{colName, nil, "DESC"} - statement.orderBy = append(statement.orderBy, ob) - if _, err := ob.CheckValid(); err != nil { + notNil, err := ob.CheckValid() + if err != nil { statement.LastError = err return statement } + if notNil { + statement.orderBy = append(statement.orderBy, ob) + } } return statement } @@ -135,11 +138,14 @@ func (statement *Statement) Asc(colNames ...string) *Statement { } for _, colName := range colNames { ob := orderBy{colName, nil, "ASC"} - statement.orderBy = append(statement.orderBy, ob) - if _, err := ob.CheckValid(); err != nil { + notNil, err := ob.CheckValid() + if err != nil { statement.LastError = err return statement } + if notNil { + statement.orderBy = append(statement.orderBy, ob) + } } return statement }