CAST 函数有什么作用?

Gee*_*Cat 6 sql casting

我在 SQL 中遇到这些语句,我不明白使用CAST函数会输出什么?

以下是声明:

  1. cast(date_var - 19000000 as DATE) + 1 as integer

这会输出 date_var 的第二天吗?

  1. cast(substr('date_var',1,6) || '01' as integer) - 10000

我更困惑这会输出什么?

Use*_*_CO 5

CAST 或 CONVERT 将值从一种数据类型显式转换为另一种数据类型。

SQL语法1:

CONVERT( datatype, expression [, style] )
Run Code Online (Sandbox Code Playgroud)

SQL语法2:

CAST( expression AS datatype )
Run Code Online (Sandbox Code Playgroud)

参数: expression 任何类型的任何表达式。数据类型

新的数据类型。该参数不是表达式。

风格

与 MS SQL Server 兼容的整数值。

转义语法:

{fn CONVERT( expression, datatype )}
Run Code Online (Sandbox Code Playgroud)

返回类型:由参数数据类型确定。例子:

SELECT convert( varchar(30), price )
SELECT convert( nvarchar(30), now(), 102)
SELECT {fn convert( {fn now()}, nvarchar(30))}
SELECT cast( price as varchar(30)
Run Code Online (Sandbox Code Playgroud)

来源