1 package goqu_test
2
3 import (
4 "fmt"
5
6 "github.com/doug-martin/goqu/v9"
7 _ "github.com/doug-martin/goqu/v9/dialect/mysql"
8 )
9
10 func ExampleDelete() {
11 ds := goqu.Delete("items")
12
13 sql, args, _ := ds.ToSQL()
14 fmt.Println(sql, args)
15
16
17
18 }
19
20 func ExampleDeleteDataset_Executor() {
21 db := getDB()
22
23 de := db.Delete("goqu_user").
24 Where(goqu.Ex{"first_name": "Bob"}).
25 Executor()
26 if r, err := de.Exec(); err != nil {
27 fmt.Println(err.Error())
28 } else {
29 c, _ := r.RowsAffected()
30 fmt.Printf("Deleted %d users", c)
31 }
32
33
34
35 }
36
37 func ExampleDeleteDataset_Executor_returning() {
38 db := getDB()
39
40 de := db.Delete("goqu_user").
41 Where(goqu.C("last_name").Eq("Yukon")).
42 Returning(goqu.C("id")).
43 Executor()
44
45 var ids []int64
46 if err := de.ScanVals(&ids); err != nil {
47 fmt.Println(err.Error())
48 } else {
49 fmt.Printf("Deleted users [ids:=%+v]", ids)
50 }
51
52
53
54 }
55
56 func ExampleDeleteDataset_With() {
57 sql, _, _ := goqu.Delete("test").
58 With("check_vals(val)", goqu.From().Select(goqu.L("123"))).
59 Where(goqu.C("val").Eq(goqu.From("check_vals").Select("val"))).
60 ToSQL()
61 fmt.Println(sql)
62
63
64
65 }
66
67 func ExampleDeleteDataset_WithRecursive() {
68 sql, _, _ := goqu.Delete("nums").
69 WithRecursive("nums(x)",
70 goqu.From().Select(goqu.L("1")).
71 UnionAll(goqu.From("nums").
72 Select(goqu.L("x+1")).Where(goqu.C("x").Lt(5)))).
73 ToSQL()
74 fmt.Println(sql)
75
76
77 }
78
79 func ExampleDeleteDataset_Where() {
80
81 sql, _, _ := goqu.Delete("test").Where(goqu.Ex{
82 "a": goqu.Op{"gt": 10},
83 "b": goqu.Op{"lt": 10},
84 "c": nil,
85 "d": []string{"a", "b", "c"},
86 }).ToSQL()
87 fmt.Println(sql)
88
89 sql, _, _ = goqu.Delete("test").Where(goqu.ExOr{
90 "a": goqu.Op{"gt": 10},
91 "b": goqu.Op{"lt": 10},
92 "c": nil,
93 "d": []string{"a", "b", "c"},
94 }).ToSQL()
95 fmt.Println(sql)
96
97 sql, _, _ = goqu.Delete("test").Where(
98 goqu.Or(
99 goqu.Ex{
100 "a": goqu.Op{"gt": 10},
101 "b": goqu.Op{"lt": 10},
102 },
103 goqu.Ex{
104 "c": nil,
105 "d": []string{"a", "b", "c"},
106 },
107 ),
108 ).ToSQL()
109 fmt.Println(sql)
110
111 sql, _, _ = goqu.Delete("test").Where(
112 goqu.C("a").Gt(10),
113 goqu.C("b").Lt(10),
114 goqu.C("c").IsNull(),
115 goqu.C("d").In("a", "b", "c"),
116 ).ToSQL()
117 fmt.Println(sql)
118
119 sql, _, _ = goqu.Delete("test").Where(
120 goqu.Or(
121 goqu.C("a").Gt(10),
122 goqu.And(
123 goqu.C("b").Lt(10),
124 goqu.C("c").IsNull(),
125 ),
126 ),
127 ).ToSQL()
128 fmt.Println(sql)
129
130
131
132
133
134
135 }
136
137 func ExampleDeleteDataset_Where_prepared() {
138
139 sql, args, _ := goqu.Delete("test").Prepared(true).Where(goqu.Ex{
140 "a": goqu.Op{"gt": 10},
141 "b": goqu.Op{"lt": 10},
142 "c": nil,
143 "d": []string{"a", "b", "c"},
144 }).ToSQL()
145 fmt.Println(sql, args)
146
147 sql, args, _ = goqu.Delete("test").Prepared(true).Where(goqu.ExOr{
148 "a": goqu.Op{"gt": 10},
149 "b": goqu.Op{"lt": 10},
150 "c": nil,
151 "d": []string{"a", "b", "c"},
152 }).ToSQL()
153 fmt.Println(sql, args)
154
155 sql, args, _ = goqu.Delete("test").Prepared(true).Where(
156 goqu.Or(
157 goqu.Ex{
158 "a": goqu.Op{"gt": 10},
159 "b": goqu.Op{"lt": 10},
160 },
161 goqu.Ex{
162 "c": nil,
163 "d": []string{"a", "b", "c"},
164 },
165 ),
166 ).ToSQL()
167 fmt.Println(sql, args)
168
169 sql, args, _ = goqu.Delete("test").Prepared(true).Where(
170 goqu.C("a").Gt(10),
171 goqu.C("b").Lt(10),
172 goqu.C("c").IsNull(),
173 goqu.C("d").In("a", "b", "c"),
174 ).ToSQL()
175 fmt.Println(sql, args)
176
177 sql, args, _ = goqu.Delete("test").Prepared(true).Where(
178 goqu.Or(
179 goqu.C("a").Gt(10),
180 goqu.And(
181 goqu.C("b").Lt(10),
182 goqu.C("c").IsNull(),
183 ),
184 ),
185 ).ToSQL()
186 fmt.Println(sql, args)
187
188
189
190
191
192
193 }
194
195 func ExampleDeleteDataset_ClearWhere() {
196 ds := goqu.Delete("test").Where(
197 goqu.Or(
198 goqu.C("a").Gt(10),
199 goqu.And(
200 goqu.C("b").Lt(10),
201 goqu.C("c").IsNull(),
202 ),
203 ),
204 )
205 sql, _, _ := ds.ClearWhere().ToSQL()
206 fmt.Println(sql)
207
208
209 }
210
211 func ExampleDeleteDataset_Limit() {
212 ds := goqu.Dialect("mysql").Delete("test").Limit(10)
213 sql, _, _ := ds.ToSQL()
214 fmt.Println(sql)
215
216
217 }
218
219 func ExampleDeleteDataset_LimitAll() {
220
221 ds := goqu.Dialect("mysql").Delete("test").LimitAll()
222 sql, _, _ := ds.ToSQL()
223 fmt.Println(sql)
224
225
226 }
227
228 func ExampleDeleteDataset_ClearLimit() {
229
230 ds := goqu.Dialect("mysql").Delete("test").Limit(10)
231 sql, _, _ := ds.ClearLimit().ToSQL()
232 fmt.Println(sql)
233
234
235 }
236
237 func ExampleDeleteDataset_Order() {
238
239 ds := goqu.Dialect("mysql").Delete("test").Order(goqu.C("a").Asc())
240 sql, _, _ := ds.ToSQL()
241 fmt.Println(sql)
242
243
244 }
245
246 func ExampleDeleteDataset_OrderAppend() {
247
248 ds := goqu.Dialect("mysql").Delete("test").Order(goqu.C("a").Asc())
249 sql, _, _ := ds.OrderAppend(goqu.C("b").Desc().NullsLast()).ToSQL()
250 fmt.Println(sql)
251
252
253 }
254
255 func ExampleDeleteDataset_OrderPrepend() {
256
257 ds := goqu.Dialect("mysql").Delete("test").Order(goqu.C("a").Asc())
258 sql, _, _ := ds.OrderPrepend(goqu.C("b").Desc().NullsLast()).ToSQL()
259 fmt.Println(sql)
260
261
262 }
263
264 func ExampleDeleteDataset_ClearOrder() {
265 ds := goqu.Delete("test").Order(goqu.C("a").Asc())
266 sql, _, _ := ds.ClearOrder().ToSQL()
267 fmt.Println(sql)
268
269
270 }
271
272 func ExampleDeleteDataset_ToSQL() {
273 sql, args, _ := goqu.Delete("items").ToSQL()
274 fmt.Println(sql, args)
275
276 sql, args, _ = goqu.Delete("items").
277 Where(goqu.Ex{"id": goqu.Op{"gt": 10}}).
278 ToSQL()
279 fmt.Println(sql, args)
280
281
282
283
284 }
285
286 func ExampleDeleteDataset_Prepared() {
287 sql, args, _ := goqu.Delete("items").Prepared(true).ToSQL()
288 fmt.Println(sql, args)
289
290 sql, args, _ = goqu.Delete("items").
291 Prepared(true).
292 Where(goqu.Ex{"id": goqu.Op{"gt": 10}}).
293 ToSQL()
294 fmt.Println(sql, args)
295
296
297
298
299 }
300
301 func ExampleDeleteDataset_Returning() {
302 ds := goqu.Delete("items")
303 sql, args, _ := ds.Returning("id").ToSQL()
304 fmt.Println(sql, args)
305
306 sql, args, _ = ds.Returning("id").Where(goqu.C("id").IsNotNull()).ToSQL()
307 fmt.Println(sql, args)
308
309
310
311
312 }
313
View as plain text