QBJoin

Properties Summarized

TypeNameSummary

Get all the columns of the datasource that can be used for this query (select or where clause)

Specifies a comment of the join.

Returns the join type, one of IQueryBuilderJoin#LEFT_OUTER_JOIN, IQueryBuilderJoin#INNER_JOIN, IQueryBuilderJoin#RIGHT_OUTER_JOIN, IQueryBuilderJoin#FULL_JOIN

Get the joins clause of this table based clause.

Get the on clause for the join.

Get query builder parent table clause, this may be a query or a join clause.

Get query builder parent.

Methods Summarized

TypeNameSummary

Get a column from the table.

Get a column from the table with given alias.

Returns the datasource for this.

Returns the table alias for this.

Properties Detailed

columns

Get all the columns of the datasource that can be used for this query (select or where clause)

Type QBColumns

Sample

var query = foundset.getQuery();
query.result.add(query.columns.name, "name");
query.where.add(query.columns.orderdate.isNull)

comment

Specifies a comment of the join.

Type String

Sample

var query = datasources.db.example_data.orders.createSelect();
query.result.add(query.joins.orders_to_orderlines.columns.price)
query.joins.orders_to_orderlines.comment = 'Join comment'

joinType

Returns the join type, one of IQueryBuilderJoin#LEFT_OUTER_JOIN, IQueryBuilderJoin#INNER_JOIN, IQueryBuilderJoin#RIGHT_OUTER_JOIN, IQueryBuilderJoin#FULL_JOIN

Type Number joinType.

joins

Get the joins clause of this table based clause. Joins added to this clause will be based on this table clauses table.

Type QBJoins

Sample

foundset.getQuery().joins

on

Get the on clause for the join.

Type QBLogicalCondition

Sample

var query = datasources.db.example_data.person.createSelect();
/** @type {QBJoin<db:/example_data/person>} */
var join1 = query.joins.add('db:/example_data/person')
join1.on.add(query.columns.parent_person_id.eq(join1.columns.person_id))
/** @type {QBJoin<db:/example_data/person>} */
var join2 = query.joins.add('db:/example_data/person')
join2.on.add(join1.columns.parent_person_id.eq(join2.columns.person_id))

query.where.add(join2.columns.name.eq('john'))
foundset.loadRecords(query)

parent

Get query builder parent table clause, this may be a query or a join clause.

Type QBTableClause

Sample

var query = datasources.db.example_data.person.createSelect();
	query.where.add(query.joins.person_to_parent.joins.person_to_parent.columns.name.eq('john'))
	foundset.loadRecords(query)

root

Get query builder parent.

Type QBSelect

Sample

var subquery = datasources.db.example_data.order_details.createSelect();

	var query = datasources.db.example_data.orders.createSelect();
	query.where.add(query
		.or
			.add(query.columns.order_id.not.isin([1, 2, 3]))

			.add(query.exists(
					subquery.where.add(subquery.columns.orderid.eq(query.columns.order_id)).root
			))
		)

	foundset.loadRecords(query)

Methods Detailed

getColumn(name)

Get a column from the table.

Parameters

  • String name the name of column to get

Returns: QBColumn

Sample

foundset.getQuery().getColumn('orderid')

getColumn(columnTableAlias, name)

Get a column from the table with given alias. The alias may be of the main table or any level deep joined table.

Parameters

  • String columnTableAlias the alias for the table

  • String name the name of column to get

Returns: QBColumn

Sample

foundset.getQuery().getColumn('orderid', 'opk')

getDataSource()

Returns the datasource for this.

Returns: String the dataSource

getTableAlias()

Returns the table alias for this.

Returns: String the tableAlias


Last updated