# ColumnSet

abstract class ColumnSet : FieldSet

Represents a set of columns.

#### Inheritors

QueryAlias
Join
Table

## Constructors

ColumnSet
Link copied to clipboard
constructor()

## Properties

columns
Link copied to clipboard
abstract val columns: List<Column<*>>

Returns the columns of this column set.

fields
Link copied to clipboard
open override val fields: List<Expression<*>>

Returns the field of this field set.

realFields
Link copied to clipboard
open val realFields: List<Expression<*>>

Returns all real fields, unrolling composite CompositeColumn if present

source
Link copied to clipboard
open override val source: ColumnSet

Return the column set that contains this field set.

## Functions

crossJoin
Link copied to clipboard
abstract fun crossJoin(otherTable: ColumnSet): Join

Creates a cross join relation with otherTable.

describe
Link copied to clipboard
abstract fun describe(s: Transaction, queryBuilder: QueryBuilder)

Appends the SQL representation of this column set to the specified queryBuilder.

fullJoin
Link copied to clipboard
abstract fun fullJoin(otherTable: ColumnSet): Join

Creates a full outer join relation with otherTable.

innerJoin
Link copied to clipboard
abstract fun innerJoin(otherTable: ColumnSet): Join

Creates an inner join relation with otherTable.

join
Link copied to clipboard
abstract fun join(otherTable: ColumnSet, joinType: JoinType, onColumn: Expression<*>? = null, otherColumn: Expression<*>? = null, lateral: Boolean = false, additionalConstraint: SqlExpressionBuilder.() -> Op<Boolean>? = null): Join

Creates a join relation with otherTable. When all joining options are absent Exposed will try to resolve referencing columns by itself.

leftJoin
Link copied to clipboard
abstract fun leftJoin(otherTable: ColumnSet): Join

Creates a left outer join relation with otherTable.

rightJoin
Link copied to clipboard
abstract fun rightJoin(otherTable: ColumnSet): Join

Creates a right outer join relation with otherTable.

select
Link copied to clipboard
fun select(columns: List<Expression<*>>): Query

Creates a `SELECT` Query using a list of columns or expressions from this ColumnSet.

fun select(column: Expression<*>, vararg columns: Expression<*>): Query

Creates a `SELECT` Query by selecting either a single column, or a subset of columns, from this ColumnSet.

select
Link copied to clipboard
inline fun FieldSet.select(where: SqlExpressionBuilder.() -> Op<Boolean>): Query
fun FieldSet.select(where: Op<Boolean>): Query
selectAll
Link copied to clipboard
fun FieldSet.selectAll(): Query

Creates a `SELECT` Query by selecting all columns from this ColumnSet.

selectAllBatched
Link copied to clipboard
fun FieldSet.selectAllBatched(batchSize: Int = 1000): Iterable<Iterable<ResultRow>>
selectBatched
Link copied to clipboard
fun FieldSet.selectBatched(batchSize: Int = 1000, where: SqlExpressionBuilder.() -> Op<Boolean>): Iterable<Iterable<ResultRow>>
slice
Link copied to clipboard
fun slice(columns: List<Expression<*>>): FieldSet
fun slice(column: Expression<*>, vararg columns: Expression<*>): FieldSet
targetTables
Link copied to clipboard
fun ColumnSet.targetTables(): List<Table>

Returns the list of tables to which the columns in this column set belong.