DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY (EXCEPT INSIDE THE DIV BELOW WITH ID=DESCRIPTION), UNLESS YOU KNOW WHAT YOU'RE DOING.
THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO AUTO UPDATE THE CONTENT THROUGH THE DOC GENERATOR.
Enter additional information related to this 'class' inside the {div} macro with 'id=description'
{column:width=80px|padding=0px}{column}{column}{column}
Property Summary
parent
Get query builder parent table clause, this may be a query or a join clause.
{column:width=80px|padding=0px}{column}{column}{column}
Method Summary
{column:width=100%|padding=0px}{column}
Property Details
Get query builder parent table clause, this may be a query or a join clause.
Sample
/** @type {QBSelect<db:/example_data/person>} */ var query = databaseManager.createSelect('db:/example_data/person') query.where.add(query.joins.person_to_parent.joins.person_to_parent.columns.name.eq('john')) foundset.loadRecords(query)
Get query builder parent.
Sample
/** @type {QBSelect<db:/example_data/order_details>} */ var subquery = databaseManager.createSelect('db:/example_data/order_details') /** @type {QBSelect<db:/example_data/orders>} */ var query = databaseManager.createSelect('db:/example_data/orders') 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)
{column:width=100%|padding=0px}{column}
Method Details
add
(dataSource)
Add a join with join type IQueryBuilderJoin#LEFT_OUTER_JOIN and no alias for the joining table.
Sample
/** @type {QBSelect<db:/example_data/orders>} */ var query = databaseManager.createSelect('db:/example_data/orders') /** @type {QBJoin<db:/example_data/order_details>} */ var join = query.joins.add('db:/example_data/order_details', JSRelation.INNER_JOIN, 'odetail') join.on.add(join.columns.orderid.eq(query.columns.orderid)) // to add a join based on a relation, use the relation name var join2 = query.joins.add('orders_to_customers', 'cust') query.where.add(join2.columns.customerid.eq(999)) foundset.loadRecords(query)
add
(dataSource, joinType)
Add a join with no alias for the joining table.
Sample
/** @type {QBSelect<db:/example_data/orders>} */ var query = databaseManager.createSelect('db:/example_data/orders') /** @type {QBJoin<db:/example_data/order_details>} */ var join = query.joins.add('db:/example_data/order_details', JSRelation.INNER_JOIN, 'odetail') join.on.add(join.columns.orderid.eq(query.columns.orderid)) // to add a join based on a relation, use the relation name var join2 = query.joins.add('orders_to_customers', 'cust') query.where.add(join2.columns.customerid.eq(999)) foundset.loadRecords(query)
add
(dataSource, joinType, alias)
Add a join clause from the parent query builder part to the specified data source.
Sample
/** @type {QBSelect<db:/example_data/orders>} */ var query = databaseManager.createSelect('db:/example_data/orders') /** @type {QBJoin<db:/example_data/order_details>} */ var join = query.joins.add('db:/example_data/order_details', JSRelation.INNER_JOIN, 'odetail') join.on.add(join.columns.orderid.eq(query.columns.orderid)) // to add a join based on a relation, use the relation name var join2 = query.joins.add('orders_to_customers', 'cust') query.where.add(join2.columns.customerid.eq(999)) foundset.loadRecords(query)
add
(dataSourceOrRelation, alias)
Add a join based on relation or add a manual join.
When dataSourceOrRelation is a relation name, a join will be added based on the relation.
When dataSourceOrRelation is a data source, an empty join will be added with join type IQueryBuilderJoin#LEFT_OUTER_JOIN.
Sample
/** @type {QBSelect<db:/example_data/orders>} */ var query = databaseManager.createSelect('db:/example_data/orders') /** @type {QBJoin<db:/example_data/order_details>} */ var join = query.joins.add('db:/example_data/order_details', JSRelation.INNER_JOIN, 'odetail') join.on.add(join.columns.orderid.eq(query.columns.orderid)) // to add a join based on a relation, use the relation name var join2 = query.joins.add('orders_to_customers', 'cust') query.where.add(join2.columns.customerid.eq(999)) foundset.loadRecords(query)