sqlbuilder is a Go library for building SQL queries.
The latest stable version is 4.0.0. Version 4 is identical to version 3 with added support for Go modules.
sqlbuilder follows Semantic Versioning.
import "github.com/thcyron/sqlbuilder/v4"SELECT
query, args, dest := sqlbuilder.Select().
        From("customers").
        Map("id", &customer.ID).
        Map("name", &customer.Name).
        Map("phone", &customer.Phone).
        Order("id DESC").
        Limit(1).
        Build()
err := db.QueryRow(query, args...).Scan(dest...)INSERT
query, args, dest := sqlbuilder.Insert().
        Into("customers").
        Set("name", "John").
        Set("phone", "555").
        Build()
res, err := db.Exec(query, args...)UPDATE
query, args := sqlbuilder.Update().
        Table("customers").
        Set("name", "John").
        Set("phone", "555").
        Where("id = ?", 1).
        Build()
res, err := db.Exec(query, args...)DELETE
query, args := sqlbuilder.Delete().
    From("customers").
    Where("name = ?", "John").
    Build()
res, err := db.Exec(query, args...)sqlbuilder supports building queries for MySQL, SQLite, and Postgres databases. You
can set the default dialect with:
sqlbuilder.DefaultDialect = sqlbuilder.Postgres
sqlbuilder.Select().From("...")...Or you can specify the dialect explicitly:
sqlbuilder.Select().Dialect(sqlbuilder.Postgres).From("...")...sqlbuilder is licensed under the MIT License.