Child pages
  • QBGroupBy
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »


Property Summary
QBSelect parent
Get query builder parent table clause, this may be a query or a join clause.
QBSelect root
Get query builder parent.

Method Summary
QBGroupBy add(column)
Add column name to group-by clause.
QBGroupBy add(function)
Add column name to group-by clause.
QBGroupBy addPk()
Add the tables' primary pk columns in alphabetical order to the group by clause.
QBGroupBy clear()
Clear the to group-by clause.

Property Details
parent
Get query builder parent table clause, this may be a query or a join clause.
Returns
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)
root
Get query builder parent.
Returns
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)

Method Details
add
QBGroupBy add (column)

Add column name to group-by clause.

Same as query.groupBy().add(join.getColumn("value"))

Parameters
{QBColumn} column - the column to add to the query condition
Returns
Sample
/** @type {QBSelect<db:/example_data/orders>} */
var query = databaseManager.createSelect('db:/example_data/orders')
query.groupBy.add(query.columns.orderid) // have to group by on pk when using having-conditions in (foundset) pk queries
.root.having.add(query.joins.orders_to_order_details.columns.quantity.count.eq(0))
foundset.loadRecords(query)
add
QBGroupBy add (function)

Add column name to group-by clause.

Same as query.groupBy().add(join.getColumn("value"))

Parameters
{QBFunction} function - the function to add to the query
Returns
Sample
/** @type {QBSelect<db:/example_data/orders>} */
var query = databaseManager.createSelect('db:/example_data/orders')
query.groupBy.add(query.columns.orderid) // have to group by on pk when using having-conditions in (foundset) pk queries
.root.having.add(query.joins.orders_to_order_details.columns.quantity.count.eq(0))
foundset.loadRecords(query)
addPk
QBGroupBy addPk ()
Add the tables' primary pk columns in alphabetical order to the group by clause.
Returns
Sample
/** @type {QBSelect<db:/example_data/orders>} */
var query = databaseManager.createSelect('db:/example_data/orders')
query.groupBy.addPk() // have to group by on pk when using having-conditions in (foundset) pk queries
.root.having.add(query.joins.orders_to_order_details.columns.quantity.count.eq(0))
foundset.loadRecords(query)
clear
QBGroupBy clear ()
Clear the to group-by clause.
Returns
Sample
var q = foundset.getQuery()
q.where.add(q.columns.x.eq(100))
query.groupBy.clear.root.clearHaving()
foundset.loadRecords(q);

  • No labels