| 11 | ) |
| 12 | |
| 13 | func BenchmarkSelect(b *testing.B) { |
| 14 | user, _ := schema.Parse(&tests.User{}, &sync.Map{}, db.NamingStrategy) |
| 15 | |
| 16 | for i := 0; i < b.N; i++ { |
| 17 | stmt := gorm.Statement{DB: db, Table: user.Table, Schema: user, Clauses: map[string]clause.Clause{}} |
| 18 | clauses := []clause.Interface{clause.Select{}, clause.From{}, clause.Where{Exprs: []clause.Expression{clause.Eq{Column: clause.PrimaryColumn, Value: "1"}, clause.Gt{Column: "age", Value: 18}, clause.Or(clause.Neq{Column: "name", Value: "jinzhu"})}}} |
| 19 | |
| 20 | for _, clause := range clauses { |
| 21 | stmt.AddClause(clause) |
| 22 | } |
| 23 | |
| 24 | stmt.Build("SELECT", "FROM", "WHERE") |
| 25 | _ = stmt.SQL.String() |
| 26 | } |
| 27 | } |
| 28 | |
| 29 | func BenchmarkComplexSelect(b *testing.B) { |
| 30 | user, _ := schema.Parse(&tests.User{}, &sync.Map{}, db.NamingStrategy) |