# QBDatetimeColumn

## Overview

The `QBDatetimeColumn` class represents a datetime 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)       | [day](#day)       | Extract day from date               |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [hour](#hour)     | Extract hour from date              |
| [QBCondition](/reference/servoycore/dev-api/database-manager/qbcondition.md)               | [isNull](#isnull) | Compare column with null.           |
| [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.md)     | [max](#max)       | Create an aggregate max expression. |
| [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.md)     | [min](#min)       | Create an aggregate min expression. |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [minute](#minute) | Extract minute from date            |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [month](#month)   | Extract month from date             |
| [QBColumnComparable](/reference/servoycore/dev-api/database-manager/qbcolumncomparable.md) | [not](#not)       | Create a negated condition.         |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [second](#second) | Extract second from date            |
| [QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md)       | [year](#year)     | Extract year from date              |

## 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. |
| [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.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.          |
| [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.md) | [nullif(arg)](#nullif-arg)                        | Create nullif(arg) expression                           |

## Properties Detailed

### day

Extract day from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the day from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.day)
```

### hour

Extract hour from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the hour from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.hour)
```

### 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**\
[QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.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**\
[QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.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)
```

### minute

Extract minute from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the minute from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.minute)
```

### month

Extract month from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the month from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.month)
```

### 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))
```

### second

Extract second from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the second from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.second)
```

### year

Extract year from date

**Type**\
[QBIntegerColumn](/reference/servoycore/dev-api/database-manager/qbintegercolumn.md) a QBIntegerColumn representing the extraction of the year from a date.

**Sample**

```js
query.result.add(query.columns.mydatecol.year)
```

## 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:** [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.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:** [QBDatetimeColumn](/reference/servoycore/dev-api/database-manager/qbdatetimecolumn.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/qbdatetimecolumn.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.
