-record(select, {
    kind :: cake@internal@read_query:select_kind(),
    select :: cake@internal@read_query:selects(),
    from :: cake@internal@read_query:from(),
    join :: cake@internal@read_query:joins(),
    where :: cake@internal@read_query:where(),
    group_by :: cake@internal@read_query:group_by(),
    having :: cake@internal@read_query:where(),
    order_by :: cake@internal@read_query:order_by(),
    limit :: cake@internal@read_query:limit(),
    offset :: cake@internal@read_query:offset(),
    epilog :: cake@internal@read_query:epilog(),
    comment :: cake@internal@read_query:comment()
}).
