{div:style=display:none}
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'{div}
{div:id=description}{div}\\ 

{table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Property Summary{th}{tr}{tbody}{tr}{td}[Boolean]{td}{td}[#distinct]
Get/set the distinct flag for the query.{td}{tr}{tbody}{tbody}{tr}{td}[QBSelect]{td}{td}[#parent]
Get query builder parent table clause, this may be a query or a join clause.{td}{tr}{tbody}{tbody}{tr}{td}[QBSelect]{td}{td}[#root]
Get query builder parent.{td}{tr}{tbody}{table}\\ 

{table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Method Summary{th}{tr}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(aggregate)
Add an aggregate to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(aggregate, alias)
Add an aggregate with alias to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(column)
Add a column to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(column, alias)
Add a column with alias to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(func)
Add a function result to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#add]\(func, alias)
Add a function with alias result to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#addPk]\()
Add the tables' primary pk columns in alphabetical order to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#addValue]\(value)
Add a value to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#addValue]\(value, alias)
Add a value with an alias to the query result.{td}{tr}{tbody}{tbody}{tr}{td}[QBResult]{td}{td}[#clear]\()
Clear the columns in the query result.{td}{tr}{tbody}{table}\\ 

{table:id=property|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Property Details{th}{tr}{tbody:id=distinct}{tr:id=name}{td}h6.distinct{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.distinct = true
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=parent}{tr:id=name}{td}h6.parent{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBSelect]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
/** @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)
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=root}{tr:id=name}{td}h6.root{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBSelect]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
/** @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)
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}\\ 

{table:id=function|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Method Details{th}{tr}{tbody:id=add-QBAggregate}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(aggregate){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBAggregate]} aggregate -- the aggregate to add to result
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.label_text.max)
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=add-QBAggregate_String}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(aggregate, alias){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBAggregate]} aggregate -- the aggregate to add to result
\{[String]} alias -- aggregate alias
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.item_count.max, 'maximum_items')
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=add-QBColumn}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(column){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBColumn]} column -- column to add to result
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.custname)
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=add-QBColumn_String}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(column, alias){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBColumn]} column -- column to add to result
\{[String]} alias -- column alias
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.custname, 'customer_name')
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=add-QBFunction}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(func){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBFunction]} func -- the function to add to the result
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.custname.upper())
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=add-QBFunction_String}{tr:id=name}{td}h6.add{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}add{span}{span}\(func, alias){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[QBFunction]} func -- the function to add to the result
\{[String]} alias -- function alias
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.add(query.columns.custname.upper(), 'customer_name')
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addPk}{tr:id=name}{td}h6.addPk{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}addPk{span}{span}\(){span}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.addPk()
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addValue-Object}{tr:id=name}{td}h6.addValue{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}addValue{span}{span}\(value){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} value -- value add to result
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.addValue(100)
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=addValue-Object_String}{tr:id=name}{td}h6.addValue{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}addValue{span}{span}\(value, alias){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} value -- value add to result
\{[String]} alias -- value alias
{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.addValue(100, 'myvalue')
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=clear}{tr:id=name}{td}h6.clear{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[QBResult]{span}{span:style=font-weight: bold;}clear{span}{span}\(){span}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[QBResult]{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript}
query.result.clear()
{code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}