MCPcopy Create free account
hub / github.com/go-pg/pg / appendTables

Method appendTables

orm/select.go:271–312  ·  view source on GitHub ↗
(fmter QueryFormatter, b []byte)

Source from the content-addressed store, hash-verified

269}
270
271func (q *SelectQuery) appendTables(fmter QueryFormatter, b []byte) (_ []byte, err error) {
272 tables := q.q.tables
273
274 if q.q.modelHasTableName() {
275 table := q.q.tableModel.Table()
276 b = fmter.FormatQuery(b, string(table.SQLNameForSelects))
277 if table.Alias != "" {
278 b = append(b, " AS "...)
279 b = append(b, table.Alias...)
280 }
281
282 if len(tables) > 0 {
283 b = append(b, ", "...)
284 }
285 } else if len(tables) > 0 {
286 b, err = tables[0].AppendQuery(fmter, b)
287 if err != nil {
288 return nil, err
289 }
290 if q.q.modelHasTableAlias() {
291 b = append(b, " AS "...)
292 b = append(b, q.q.tableModel.Table().Alias...)
293 }
294
295 tables = tables[1:]
296 if len(tables) > 0 {
297 b = append(b, ", "...)
298 }
299 }
300
301 for i, f := range tables {
302 if i > 0 {
303 b = append(b, ", "...)
304 }
305 b, err = f.AppendQuery(fmter, b)
306 if err != nil {
307 return nil, err
308 }
309 }
310
311 return b, nil
312}
313
314//------------------------------------------------------------------------------
315

Callers 1

AppendQueryMethod · 0.95

Calls 5

modelHasTableNameMethod · 0.80
modelHasTableAliasMethod · 0.80
TableMethod · 0.65
FormatQueryMethod · 0.65
AppendQueryMethod · 0.65

Tested by

no test coverage detected