xb

Custom JOINs Guide (English)

English version of xb/doc/CUSTOM_JOINS_GUIDE.md. It explains how to extend xb’s JOIN DSL for dialect-specific syntax such as ClickHouse GLOBAL JOIN or ASOF JOIN.


Built-in JOIN catalog

const (
    inner_join      = "INNER JOIN"
    left_join       = "LEFT JOIN"
    right_join      = "RIGHT JOIN"
    cross_join      = "CROSS JOIN"
    asof_join       = "ASOF JOIN"
    global_join     = "GLOBAL JOIN"
    full_outer_join = "FULL OUTER JOIN"
)

Use FromX(func(*FromBuilder)) with JOIN(kind) helpers to compose multi-step pipelines.


Adding your own JOIN

func LATERAL() xb.JOIN {
    return func() string {
        return "LATERAL JOIN"
    }
}

Best practices


Examples

Refer to doc/en/BUILDER_BEST_PRACTICES.md for more patterns.