-
Notifications
You must be signed in to change notification settings - Fork 1k
Expand file tree
/
Copy pathquery.sql.go
More file actions
109 lines (98 loc) · 2.46 KB
/
query.sql.go
File metadata and controls
109 lines (98 loc) · 2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.19.1
// source: query.sql
package querytest
import (
"context"
"database/sql"
)
const countRowsEmptyTable = `-- name: CountRowsEmptyTable :many
SELECT a, (SELECT count(a) FROM empty) as "count" FROM foo
`
type CountRowsEmptyTableRow struct {
A int32
Count int64
}
// In MySQL, only count() returns 0 for empty table.
// https://dev.mysql.com/doc/refman/8.0/en/aggregate-functions.html
func (q *Queries) CountRowsEmptyTable(ctx context.Context) ([]CountRowsEmptyTableRow, error) {
rows, err := q.db.QueryContext(ctx, countRowsEmptyTable)
if err != nil {
return nil, err
}
defer rows.Close()
var items []CountRowsEmptyTableRow
for rows.Next() {
var i CountRowsEmptyTableRow
if err := rows.Scan(&i.A, &i.Count); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const firstRowFromEmptyTable = `-- name: FirstRowFromEmptyTable :many
SELECT a, (SELECT a FROM empty limit 1) as "first" FROM foo
`
type FirstRowFromEmptyTableRow struct {
A int32
First sql.NullInt32
}
func (q *Queries) FirstRowFromEmptyTable(ctx context.Context) ([]FirstRowFromEmptyTableRow, error) {
rows, err := q.db.QueryContext(ctx, firstRowFromEmptyTable)
if err != nil {
return nil, err
}
defer rows.Close()
var items []FirstRowFromEmptyTableRow
for rows.Next() {
var i FirstRowFromEmptyTableRow
if err := rows.Scan(&i.A, &i.First); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}
const firstRowFromFooTable = `-- name: FirstRowFromFooTable :many
SELECT a, (SELECT a FROM foo limit 1) as "first" FROM foo
`
type FirstRowFromFooTableRow struct {
A int32
First sql.NullInt32
}
func (q *Queries) FirstRowFromFooTable(ctx context.Context) ([]FirstRowFromFooTableRow, error) {
rows, err := q.db.QueryContext(ctx, firstRowFromFooTable)
if err != nil {
return nil, err
}
defer rows.Close()
var items []FirstRowFromFooTableRow
for rows.Next() {
var i FirstRowFromFooTableRow
if err := rows.Scan(&i.A, &i.First); err != nil {
return nil, err
}
items = append(items, i)
}
if err := rows.Close(); err != nil {
return nil, err
}
if err := rows.Err(); err != nil {
return nil, err
}
return items, nil
}