order_by.go 552 B

1234567891011121314151617181920212223242526272829303132
  1. package clause
  2. import "git.sxidc.com/go-tools/utils/strutils"
  3. type OrderBy struct {
  4. columnName string
  5. aes bool
  6. }
  7. func NewOrderBy(columnName string, aes bool) *OrderBy {
  8. return &OrderBy{
  9. columnName: columnName,
  10. aes: aes,
  11. }
  12. }
  13. func (clause *OrderBy) Clause() (string, error) {
  14. if strutils.IsStringEmpty(clause.columnName) {
  15. return "", nil
  16. }
  17. order := " AES"
  18. if !clause.aes {
  19. order = " DESC"
  20. }
  21. return "ORDER BY " + clause.columnName + order + "\n", nil
  22. }
  23. func (clause *OrderBy) Args() []any {
  24. return make([]any, 0)
  25. }