MCPcopy
hub / github.com/Masterminds/squirrel / toSqlRaw

Method toSqlRaw

select.go:64–161  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

62}
63
64func (d *selectData) toSqlRaw() (sqlStr string, args []interface{}, err error) {
65 if len(d.Columns) == 0 {
66 err = fmt.Errorf("select statements must have at least one result column")
67 return
68 }
69
70 sql := &bytes.Buffer{}
71
72 if len(d.Prefixes) > 0 {
73 args, err = appendToSql(d.Prefixes, sql, " ", args)
74 if err != nil {
75 return
76 }
77
78 sql.WriteString(" ")
79 }
80
81 sql.WriteString("SELECT ")
82
83 if len(d.Options) > 0 {
84 sql.WriteString(strings.Join(d.Options, " "))
85 sql.WriteString(" ")
86 }
87
88 if len(d.Columns) > 0 {
89 args, err = appendToSql(d.Columns, sql, ", ", args)
90 if err != nil {
91 return
92 }
93 }
94
95 if d.From != nil {
96 sql.WriteString(" FROM ")
97 args, err = appendToSql([]Sqlizer{d.From}, sql, "", args)
98 if err != nil {
99 return
100 }
101 }
102
103 if len(d.Joins) > 0 {
104 sql.WriteString(" ")
105 args, err = appendToSql(d.Joins, sql, " ", args)
106 if err != nil {
107 return
108 }
109 }
110
111 if len(d.WhereParts) > 0 {
112 sql.WriteString(" WHERE ")
113 args, err = appendToSql(d.WhereParts, sql, " AND ", args)
114 if err != nil {
115 return
116 }
117 }
118
119 if len(d.GroupBys) > 0 {
120 sql.WriteString(" GROUP BY ")
121 sql.WriteString(strings.Join(d.GroupBys, ", "))

Callers 1

ToSqlMethod · 0.95

Calls 2

appendToSqlFunction · 0.85
JoinMethod · 0.80

Tested by

no test coverage detected