8.6 Bitwise Functions

8.6.1 BIN_AND()

Available inDSQL, PSQL

Possible name conflictYES → Read details

Result typeSMALLINT, INTEGER or BIGINT

Note

SMALLINT result is returned only if all the arguments are explicit SMALLINTs or NUMERIC(*n*, 0) with n <= 4; otherwise small integers return an INTEGER result.

Syntax

  1. BIN_AND (number, number [, number ...])

Table 8.6.1.1 BIN_AND Function Parameters

ParameterDescription

number

Any integer number (literal, smallint/integer/bigint, numeric/decimal with scale 0)

Returns the result of the bitwise AND operation on the argument(s).

See alsoSection 8.6.3, BIN_OR(), Section 8.6.6, BIN_XOR()

8.6.2 BIN_NOT()

Available inDSQL, PSQL

Result typeSMALLINT, INTEGER or BIGINT

Note

SMALLINT result is returned only if all the arguments are explicit SMALLINTs or NUMERIC(*n*, 0) with n <= 4; otherwise small integers return an INTEGER result.

Syntax

  1. BIN_NOT (number)

Table 8.6.2.1 BIN_NOT Function Parameter

ParameterDescription

number

Any integer number (literal, smallint/integer/bigint, numeric/decimal with scale 0)

Returns the result of the bitwise NOT operation on the argument, i.e. one’s complement.

See alsoSection 8.6.3, BIN_OR(), Section 8.6.6, BIN_XOR() and others in this set.

8.6.3 BIN_OR()

Available inDSQL, PSQL

Possible name conflictYES → Read details

Result typeSMALLINT, INTEGER or BIGINT

Note

SMALLINT result is returned only if all the arguments are explicit SMALLINTs or NUMERIC(*n*, 0) with n <= 4; otherwise small integers return an INTEGER result.

Syntax

  1. BIN_OR (number, number [, number ...])

Table 8.6.3.1 BIN_OR Function Parameters

ParameterDescription

number

Any integer number (literal, smallint/integer/bigint, numeric/decimal with scale 0)

Returns the result of the bitwise OR operation on the argument(s).

See alsoSection 8.6.1, BIN_AND(), Section 8.6.6, BIN_XOR()

8.6.4 BIN_SHL()

Available inDSQL, PSQL

Result typeBIGINT

Syntax

  1. BIN_SHL (number, shift)

Table 8.6.4.1 BIN_SHL Function Parameters

ParameterDescription

number

A number of an integer type

shift

The number of bits the number value is shifted by

Returns the first argument bitwise left-shifted by the second argument, i.e. a << b or a·2b.

See alsoSection 8.6.5, BIN_SHR()

8.6.5 BIN_SHR()

Available inDSQL, PSQL

Result typeBIGINT

Syntax

  1. BIN_SHR (number, shift)

Table 8.6.5.1 BIN_SHR Function Parameters

ParameterDescription

number

A number of an integer type

shift

The number of bits the number value is shifted by

Returns the first argument bitwise right-shifted by the second argument, i.e. a >> b or a/2b.

  • The operation performed is an arithmetic right shift (SAR), meaning that the sign of the first operand is always preserved.

See alsoSection 8.6.4, BIN_SHL()

8.6.6 BIN_XOR()

Available inDSQL, PSQL

Possible name conflictYES → Read details

Result typeSMALLINT, INTEGER or BIGINT

Note

SMALLINT result is returned only if all the arguments are explicit SMALLINTs or NUMERIC(*n*, 0) with n <= 4; otherwise small integers return an INTEGER result.

Syntax

  1. BIN_XOR (number, number [, number ...])

Table 8.6.6.1 BIN_XOR Function Parameters

ParameterDescription

number

Any integer number (literal, smallint/integer/bigint, numeric/decimal with scale 0)

Returns the result of the bitwise XOR operation on the argument(s).

See alsoSection 8.6.1, BIN_AND(), Section 8.6.3, BIN_OR()