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

Refresh page Mar 13, 2024 22:00

Supported Clients
SmartClient WebClient NGClient

Property Summary
Boolean distinct Get/set the distinct flag for the query.
QBSelect parent Get query builder parent table clause, this may be a query or a join clause.
QBSelect root Get query builder parent.

Methods Summary
QBResult add(aggregate) Add an aggregate to the query result.
QBResult add(aggregate, alias) Add an aggregate with alias to the query result.
QBResult add(column) Add a column to the query result.
QBResult add(column, alias) Add a column with alias to the query result.
QBResult add(func) Add a function result to the query result.
QBResult add(func, alias) Add a function with alias result to the query result.
QBResult add(qcase) Add a case searched expression to the query result.
QBResult add(qcase, alias) Add a case searched expression with alias to the query result.
QBResult addPk() Add the tables' primary pk columns in alphabetical order to the query result.
QBResult addSubSelect(query) Add a query to the query result.
QBResult addSubSelect(query, alias) Add a query with alias to the query result.
QBResult addSubSelect(customQuery, args) Add a custom subquery to the query result.
QBResult addSubSelect(customQuery, args, alias) Add a custom subquery with alias to the query result.
QBResult addValue(value) Add a value to the query result.
QBResult addValue(value, alias) Add a value with an alias to the query result.
QBResult clear() Clear the columns in the query result.
Array getColumns() returns an array with all the columns that will be in the select of this query.

Property Details

distinct

Get/set the distinct flag for the query.

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.distinct = true

parent

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

Returns

Supported Clients

SmartClient,WebClient,NGClient

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.

Returns

Supported Clients

SmartClient,WebClient,NGClient

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 Details

add(aggregate)

Add an aggregate to the query result.

Parameters

QBColumn aggregate the aggregate to add to result

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.label_text.max)

add(aggregate, alias)

Add an aggregate with alias to the query result.

Parameters

QBColumn aggregate the aggregate to add to result
String alias aggregate alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.item_count.max, 'maximum_items')

add(column)

Add a column to the query result.

Parameters

QBColumn column column to add to result

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.custname)

add(column, alias)

Add a column with alias to the query result.

Parameters

QBColumn column column to add to result
String alias column alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.custname, 'customer_name')

add(func)

Add a function result to the query result.

Parameters

QBColumn func the function to add to the result

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.custname.upper())

add(func, alias)

Add a function with alias result to the query result.

Parameters

QBColumn func the function to add to the result
String alias function alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.add(query.columns.custname.upper(), 'customer_name')

add(qcase)

Add a case searched expression to the query result.

Parameters

QBColumn qcase The searched case expression.

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

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

// case expressions can be added to the result of the query
	query.result.add(query.case.when(query.columns.quantity.ge(1000)).then('BIG').else('small'));

 // they can also be used in conditions
	query.where.add(query.case
		.when(query.columns.discount.gt(10)).then(50)
		.when(query.columns.quantity.le(20)).then(70)
		.else(100)
	.multiply(query.columns.unitprice).lt(10000));

add(qcase, alias)

Add a case searched expression with alias to the query result.

Parameters

QBColumn qcase The searched case expression.
String alias function alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

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

// case expressions can be added to the result of the query
	query.result.add(query.case.when(query.columns.quantity.ge(1000)).then('BIG').else('small'));

 // they can also be used in conditions
	query.where.add(query.case
		.when(query.columns.discount.gt(10)).then(50)
		.when(query.columns.quantity.le(20)).then(70)
		.else(100)
	.multiply(query.columns.unitprice).lt(10000));

addPk()

Add the tables' primary pk columns in alphabetical order to the query result.

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.addPk()

addSubSelect(query)

Add a query to the query result.

Parameters

QBSelect query query to add to result

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

// make sure the query returns exactly 1 value.
query.result.addSubSelect(subquery);

addSubSelect(query, alias)

Add a query with alias to the query result.

Parameters

QBSelect query query to add to result
String alias result alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

// make sure the query returns exactly 1 value.
query.result.addSubSelect(subquery, "mx");

addSubSelect(customQuery, args)

Add a custom subquery to the query result.

Parameters

String customQuery query to add to result
Array args arguments to the query

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

// make sure the subquery returns exactly 1 value.
// select (select max from othertab where val = 'test') from tab
query.result.addSubSelect("select max(field) from othertab where val = ?", ["test"]);

addSubSelect(customQuery, args, alias)

Add a custom subquery with alias to the query result.

Parameters

String customQuery query to add to result
Array args arguments to the query
String alias result alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

// make sure the subquery returns exactly 1 value.
// select (select max from othertab where val = 'test') as mx from tab
query.result.addSubSelect("select max from othertab where val = ?", ["test"], "mx");

addValue(value)

Add a value to the query result.

Parameters

Object value value add to result

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.addValue(100)

addValue(value, alias)

Add a value with an alias to the query result.

Parameters

Object value value add to result
String alias value alias

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.addValue(100, 'myvalue')

clear()

Clear the columns in the query result.

Returns

Supported Clients

SmartClient,WebClient,NGClient

Sample

query.result.clear()

getColumns()

returns an array with all the columns that will be in the select of this query.
can return empty array. Then the system will auto append the pk when this query is used.

Returns

Array An array of QBColumn thats in the select of this query.

Supported Clients

SmartClient,WebClient,NGClient

Sample

var columns = query.result.getColumns();

  • No labels