main v0.0.15
lj-wsdj 2024-08-22 16:20:30 +08:00
parent 6a5a48f8ed
commit 812814421d
2 changed files with 3 additions and 2 deletions

View File

@ -23,7 +23,7 @@ func (s *SqlBuilder[T]) buildPaginateSql(sqls string) string {
if s.Driver == util.DriverMysql { if s.Driver == util.DriverMysql {
return fmt.Sprintf("%s limit %d offset %d", sqls, pageSize, (pageIndex-1)*pageSize) return fmt.Sprintf("%s limit %d offset %d", sqls, pageSize, (pageIndex-1)*pageSize)
} else if s.Driver == util.DriverOracle { } else if s.Driver == util.DriverOracle {
return fmt.Sprintf("select * from (select t.*, rownum rn from (%s) t where rownum <= %d) where rn > %d", sqls, pageIndex*pageSize, (pageIndex-1)*pageSize) return fmt.Sprintf("select * from (%s where rownum <= %d) where rn > %d", sqls, pageIndex*pageSize, (pageIndex-1)*pageSize)
} else { } else {
return fmt.Sprintf("%s limit %d offset %d", sqls, pageSize, (pageIndex-1)*pageSize) return fmt.Sprintf("%s limit %d offset %d", sqls, pageSize, (pageIndex-1)*pageSize)
} }

View File

@ -65,7 +65,8 @@ func TestOracle(t *testing.T) {
sqlb.InsertConditions("@c1", "area_dn like ?", "level1=1,level2=85226,level3=86918,level4=86919,level5=86986%") sqlb.InsertConditions("@c1", "area_dn like ?", "level1=1,level2=85226,level3=86918,level4=86919,level5=86986%")
sqlb.InsertConditions("@c2", "autoseq in (?)", ids) sqlb.InsertConditions("@c2", "autoseq in (?)", ids)
page := Page{PageIndex: 1, PageSize: 10} page := Page{PageIndex: 1, PageSize: 10}
err = sqlb.FindBySql(&data) // err = sqlb.FindBySql(&data)
err = sqlb.PaginateBySql(&data, &page)
fmt.Println(data) fmt.Println(data)
page.Data = &data page.Data = &data
fmt.Println(err, page) fmt.Println(err, page)