# QBMediaColumn

## Overview

The `QBMediaColumn` class represents a media column in a `QBSelect` query.

For more information about constructing and executing queries and columns, refer to the [QBSelect](https://docs.servoy.com/reference/servoycore/dev-api/database-manager/qbcolumn) section of this documentation.

## **Extends**

[QBColumn](/reference/servoycore/dev-api/database-manager/qbcolumn.md)

## Properties Summarized

| Type                                                                                       | Name                       | Summary                               |
| ------------------------------------------------------------------------------------------ | -------------------------- | ------------------------------------- |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [bit\_length](#bit_length) | Create bit\_length(column) expression |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)               | [isNull](#isnull)          | Compare column with null.             |
| [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md)           | [max](#max)                | Create an aggregate max expression.   |
| [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md)           | [min](#min)                | Create an aggregate min expression.   |
| [QBColumnComparable](/reference/servoycore/dev-api/database-manager/qbcolumncomparable.md) | [not](#not)                | Create a negated condition.           |

## Methods Summarized

| Type                                                                             | Name                                              | Summary                                                 |
| -------------------------------------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------------- |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [between(value1, value2)](#between-value1-value2) | Compare column to a range of 2 values or other columns. |
| [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) | [coalesce(value)](#coalesce-value)                | Create coalesce(arg) expression                         |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [eq(value)](#eq-value)                            | Compare column with a value or another column.          |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [ge(value)](#ge-value)                            | Compare column with a value or another column.          |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [gt(value)](#gt-value)                            | Compare column with a value or another column.          |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [isin(query)](#isin-query)                        | Compare column with subquery result.                    |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [isin(values)](#isin-values)                      | Compare column with values.                             |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [isin(customQuery, args)](#isin-customquery-args) | Compare column with custom query result.                |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [le(value)](#le-value)                            | Compare column with a value or another column.          |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)     | [lt(value)](#lt-value)                            | Compare column with a value or another column.          |
| [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) | [nullif(arg)](#nullif-arg)                        | Create nullif(arg) expression                           |

## Properties Detailed

### bit\_length

Create bit\_length(column) expression

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the bit length function.

**Sample**

```js
query.result.add(query.columns.custname.bit_length)
```

### isNull

Compare column with null.

**Type**\
[QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "is null" comparison.

**Sample**

```js
query.where.add(query.columns.flag.isNull)
```

### max

Create an aggregate max expression.

**Type**\
[QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) a QBColumn representing the sum aggregate function.

**Sample**

```js
var query = datasources.db.example_data.orders.createSelect();
	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.max(10))
	foundset.loadRecords(query)
```

### min

Create an aggregate min expression.

**Type**\
[QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) a QBColumn representing the minimum aggregate function.

**Sample**

```js
var query = datasources.db.example_data.orders.createSelect();
	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.min(10))
	foundset.loadRecords(query)
```

### not

Create a negated condition.

**Type**\
[QBColumnComparable](/reference/servoycore/dev-api/database-manager/qbcolumncomparable.md) a QBColumn representing the negated condition.

**Sample**

```js
query.where.add(query.columns.flag.not.eq(1))
```

## Methods Detailed

### between(value1, value2)

Compare column to a range of 2 values or other columns.

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value1** ;
* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value2** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "between" comparison for the two values.

**Sample**

```js
query.where.add(query.columns.flag.between(0, 5))
```

### coalesce(value)

Create coalesce(arg) expression

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** when column is null

**Returns:** [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) a QBColumn representing the coalesce expression.

**Sample**

```js
query.result.add(query.columns.mycol.coalesce('defval'))
```

### eq(value)

Compare column with a value or another column.\
Operator: equals

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "equals" comparison.

**Sample**

```js
query.where.add(query.columns.flag.eq(1))
```

### ge(value)

Compare column with a value or another column.\
Operator: greaterThanOrEqual

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "greater than or equal to" comparison.

**Sample**

```js
query.where.add(query.columns.flag.ge(2))
```

### gt(value)

Compare column with a value or another column.\
Operator: greaterThan

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "greater than" comparison.

**Sample**

```js
query.where.add(query.columns.flag.gt(0))
```

### isin(query)

Compare column with subquery result.

**Parameters**

* [QBPart](/reference/servoycore/dev-api/database-manager/qbpart.md) **query** subquery

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "in" comparison with a subquery.

**Sample**

```js
query.where.add(query.columns.flag.isin(query2))
```

### isin(values)

Compare column with values.

**Parameters**

* [Array](/reference/servoycore/dev-api/js-lib/array.md) **values** array of values

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "in" comparison with a list of values.

**Sample**

```js
query.where.add(query.columns.flag.isin([1, 5, 99]))
```

### isin(customQuery, args)

Compare column with custom query result.

**Parameters**

* [String](/reference/servoycore/dev-api/js-lib/string.md) **customQuery** custom query
* [Array](/reference/servoycore/dev-api/js-lib/array.md) **args** query arguments

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "in" comparison with a custom query and arguments.

**Sample**

```js
query.where.add(query.columns.ccy.isin("select ccycode from currencies c where c.category = " + query.getTableAlias() + ".currency_category and c.flag = ?", ['T']))
```

### le(value)

Compare column with a value or another column.\
Operator: lessThanOrEqual

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "less than or equal to" comparison.

**Sample**

```js
query.where.add(query.columns.flag.le(2))
```

### lt(value)

Compare column with a value or another column.\
Operator: lessThan

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **value** ;

**Returns:** [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md) a QBCondition representing the "less than" comparison.

**Sample**

```js
query.where.add(query.columns.flag.lt(99))
```

### nullif(arg)

Create nullif(arg) expression

**Parameters**

* [Object](/reference/servoycore/dev-api/js-lib/object.md) **arg** object to compare

**Returns:** [QBMediaColumn](/reference/servoycore/dev-api/database-manager/qbmediacolumn.md) a QBColumn representing the nullif expression.

**Sample**

```js
query.result.add(query.columns.mycol.nullif('none'))
```

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.servoy.com/reference/servoycore/dev-api/database-manager/qbmediacolumn.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
