sql表中,有year,month,day三个字段(smallint),怎样将这三个字段合并成date字段,显示成日期格式?谢

例:year(2012),month(12),day(31)要显示成date(2012-12-3100:00:00.000)谢谢!... 例:year(2012),month(12),day(31)
要显示成date(2012-12-31 00:00:00.000)
谢谢!
展开
 我来答
落月Prc
推荐于2018-04-06 · TA获得超过2789个赞
知道大有可为答主
回答量:2011
采纳率:100%
帮助的人:2491万
展开全部
select cast(cast(year as varchar(10))+'-'+cast(month as varchar(10))+'-'+cast(day as varchar(10)) as datetime) date from 表
--解释,先把年月日组合在一起,变成 年-月-日,然后转换为datetime类型。
匿名用户
2013-05-09
展开全部
通过 DATEADD 的方式, 针对 1900-01-01 的基础上, 作日期增加的处理.

SELECT
DATEADD(
dd,
31 -1,
DATEADD(
mm,
12 -1,
DATEADD(yy, 2012 - 1900, 0))) RESULT;
GO

RESULT
-----------------------
2012-12-31 00:00:00.000

(1 行受影响)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
续满A
2018-05-23
知道答主
回答量:1
采纳率:0%
帮助的人:899
展开全部
select cast(cast(Fyear*10000+Fperiod*100+1 as varchar(50))) as date from 表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式