BIGINT 标量函数

BIGINT 函数返回不同数据类型的值的大整数 (精度为 63 位的二进制整数) 表示。

数字到 BIGINT

Read syntax diagramSkip visual syntax diagramBIGINT(numeric-expression)

字符串到 BIGINT

Read syntax diagramSkip visual syntax diagramBIGINT(string-expression)

到 BIGINT 的日期时间

Read syntax diagramSkip visual syntax diagramBIGINT(datetime-expression)

布尔值到 BIGINT

Read syntax diagramSkip visual syntax diagram BIGINT ( boolean-expression )

该模式是 SYSIBM。

Numeric to BIGINT
numeric-expression
返回任何内置数值数据类型的值的表达式。

结果是在将自变量分配给大整数列或变量时将出现的相同数字。 参数的 小数 部分被截断。 如果自变量的整个部分不在大整数范围内,那么将返回错误 (SQLSTATE 22003)

String to BIGINT
string-expression
返回 值的表达式,该值是 长度不大于字符常量最大长度的数字的字符串或 Unicode 图形字符串表示法。

结果是来自 CAST (string-expresssion AS BIGINT) 的相同数字。 将消除前导和尾部空格,并且生成的字符串必须符合形成整数,十进制,浮点或十进制浮点常量的规则 (SQLSTATE 22018)。 如果自变量的整个部分不在大整数范围内,那么将返回错误 (SQLSTATE 22003)。 string-expresssion 的数据类型不得为 CLOB 或 DBCLOB (SQLSTATE 42884)。

Datetime to BIGINT
datetime-expression
具有下列其中一种数据类型的表达式:
  • 日期。 结果是 BIGINT 值,表示日期为 yyyymmdd
  • 时间。 结果是 BIGINT 值,表示时间为 hhmmss
  • 时间戳记。 结果是 BIGINT 值,表示时间戳记为 yyyymmddhhmmss。 时间戳记值的 小数 秒部分不包含在结果中。
Boolean to BIGINT
boolean-expression
返回布尔值 (TRUE 或 FALSE) 的表达式。 结果为 1 (对于 TRUE) 或 0 (对于 FALSE)。

结果

函数的结果是一个大整数。 如果自变量可以为空,那么结果可以为空;如果自变量为空,那么结果为空值。

注意

  • 提高应用程序的可移植性: 如果第一个自变量是数字,或者如果第一个自变量是字符串且指定了长度自变量,请使用 CAST 规范 而不是此函数来提高应用程序的可移植性。

示例

  • 示例 1: 从 ORDERS_HISTORY 表中,计算订单数并以大整数值返回结果。
       SELECT BIGINT (COUNT_BIG(*))
         FROM ORDERS_HISTORY
  • 示例 2: 使用 EMPLOYEE 表,选择大整数格式的 EMPNO 列以在应用程序中进行进一步处理。
       SELECT BIGINT (EMPNO) FROM EMPLOYEE
  • 示例 3: 假定列 RECEIVED (其数据类型为 TIMESTAMP) 具有等同于 "1988-12-22-14.07.21.136421" 的内部值。
       BIGINT(RECEIVED)
    生成值 19 881 222 140 721
  • 示例 4: 假定列 STARTTIME (其数据类型为 TIME) 具有等同于 "12:03:04" 的内部值。
       BIGINT(STARTTIME)
    生成值 120 304
  • 示例 5: 以下语句返回数据类型 BIGINT 的值 1。
       values BIGINT(TRUE)
  • 示例 6: 以下语句返回数据类型 BIGINT 的值 0。
       values BIGINT(3>3)