mirror of
https://gitcode.com/gitea/gitea.git
synced 2025-06-12 07:38:06 +08:00
.github
cmd
conf
docker
models
modules
packager
public
routers
scripts
templates
vendor
github.com
Unknwon
bradfitz
go-macaron
go-sql-driver
go-xorm
builder
LICENSE
README.md
builder.go
builder_delete.go
builder_insert.go
builder_select.go
builder_update.go
cond.go
cond_and.go
cond_between.go
cond_compare.go
cond_eq.go
cond_expr.go
cond_in.go
cond_like.go
cond_neq.go
cond_not.go
cond_notin.go
cond_null.go
cond_or.go
doc.go
error.go
core
xorm
gogits
issue9
jaytaylor
jtolds
kardianos
klauspost
lib
mattn
mcuadros
microcosm-cc
msteinert
nfnt
russross
satori
sergi
shurcooL
smartystreets
urfave
golang.org
gopkg.in
strk.kbt.io
vendor.json
.bra.toml
.codebeatignore
.codebeatsettings
.dockerignore
.editorconfig
.gitattributes
.gitignore
.gopmfile
.lgtm
.mailmap
.pkgr.yml
.travis.yml
Dockerfile
Dockerfile.rpi
LICENSE
Makefile
README.md
README_ZH.md
gogs.go
50 lines
897 B
Go
50 lines
897 B
Go
package builder
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
)
|
|
|
|
func (b *Builder) selectWriteTo(w Writer) error {
|
|
if len(b.tableName) <= 0 {
|
|
return errors.New("no table indicated")
|
|
}
|
|
|
|
if _, err := fmt.Fprint(w, "SELECT "); err != nil {
|
|
return err
|
|
}
|
|
if len(b.selects) > 0 {
|
|
for i, s := range b.selects {
|
|
if _, err := fmt.Fprint(w, s); err != nil {
|
|
return err
|
|
}
|
|
if i != len(b.selects)-1 {
|
|
if _, err := fmt.Fprint(w, ","); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
if _, err := fmt.Fprint(w, "*"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
|
|
if _, err := fmt.Fprintf(w, " FROM %s", b.tableName); err != nil {
|
|
return err
|
|
}
|
|
|
|
for _, v := range b.joins {
|
|
fmt.Fprintf(w, " %s JOIN %s ON ", v.joinType, v.joinTable)
|
|
if err := v.joinCond.WriteTo(w); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
|
|
if _, err := fmt.Fprint(w, " WHERE "); err != nil {
|
|
return err
|
|
}
|
|
|
|
return b.cond.WriteTo(w)
|
|
}
|