数据库中cast,convert,dateadd都是什么函数,怎么用

数据库中cast,convert,dateadd都是什么函数,怎么用,第1张

如果SQL

Server程序员想将表达式从一种换为另一种,他可以从SQL

Server

7和2000中自带的两种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从datetime型转化成varchar型;CONVERT和CAST就可以用于这种情况。

由于SQL

Server提供两种功能,因此应该选择哪种功能或应该在哪种情况下使用该功能就很容易让人困惑了。CONVERT是专对SQL

Server使用的,使日期与时间值,小数之间转换具有更宽的灵活性。

CAST是两种功能中更具ANSI标准的功能,即虽然更具便携性(比如,使用CAST的函数能更容易的被其它数据库软件使用),但功能相对弱一些。不过,当小数转化为数值,并保留原始表达式中的小数数值时,仍然需要使用CAST。因此,我建议首先使用CAST,如果遇到必须使用CONVERT的情况时再使用CONVERT。

CAST和CONVERT还能联合使用,达到特殊的效果。比如,在current

date下生成char变量一般使用以下方法:

SELECT

CONVERT(CHAR(10),

CURRENT_TIMESTAMP,

102)

(102表明使用了ANSI日期模式,即yy.mm.dd型)

然而,如果你希望将这个变量明确生成为datetime或smalldatetime变量,以此在特定的数据库栏中兼容,那么你可以使用以下语句:

SELECT

CAST(CONVERT(CHAR(10),CURRENT_TIMESTAMP,102)

AS

DATETIME

返回值将是

yy.mm.dd

00:00:00(如12:00AM作为时间戳;

SQL

Server

Date

函数

定义和用法

DATEADD()

函数在日期中添加或减去指定的时间间隔。

语法

DATEADD(datepart,number,date)date

参数是合法的日期表达式。number

是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。

datepart

参数可以是下列的值:

datepart

缩写

yy,

yyyy

季度

qq,

q

mm,

m

年中的日

dy,

y

dd,

d

wk,

ww

星期

dw,

w

小时

hh

分钟

mi,

n

ss,

s

毫秒

ms

微妙

mcs

纳秒

ns

CAST函数的用法:

1、CAST 函数 [数据类型转换]

2、功能:

返回转换为提供的数据类型的表达式的值。

3、语法:

CAST(expression AS data type)

4、参数:

expression     要转换的表达式

data type       目标数据类型

5、用法:

如果未指定字符串类型的长度,数据库服务器将选择适当的长度。如果没有为十进制转换指定精度和小数位数,则数据库服务器将选择适当的值。

6、示例:

下面的函数确保字符串被用作日期:

SELECT CAST( '2000-10-31' AS DATE )

计算表达式 DE<1 + 2DE<的值,并将结果转换为单字符字符串。

SELECT CAST( 1 + 2 AS CHAR )

可以使用 CAST 函数缩短字符串:

SELECT CAST( 'Surname' AS CHAR(5) )

varchar类型转换成int类型的方法。如下参考:

1.打开数据库连接客户端NavicatPremium,并创建一个新的表结构,其中age列被故意设置为varchar,如下图。

2.成功创建表之后,从刚才创建的表中创建一些数据,如下图。

3.当有少量数据时,可以使用sum()函数直接求和,因为在SQL中它可以自动识别是字符串类型还是数字类型,如下图。

4.上面的方法适用于整数或少量数据,但是如果数据太大且精度太高,那么可以考虑使用SQL的CAST()和CONVERT()函数。

5. 接下来,看看CONVERT()函数,它主要用于满足zd对准确性的需求。在这里,修改原始数据并通过将age列更改为带有小数的列来测试函数,如下图。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9901748.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存