首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将varchar列转换为日期时间

将varchar列转换为日期时间
EN

Stack Overflow用户
提问于 2018-12-24 17:24:44
回答 4查看 3.9K关注 0票数 1

我有一个表,其中有一个用于dateofbirth varchar(10)的列。内部的所有数据都存储在这个'02/01/1990'中。

我需要把它转换成datetime。我试过了

代码语言:javascript
复制
CAST(DateofBirth AS DATEITME) AS BirthDate

但是,当我尝试导入时,我仍然会得到这个错误:

将varchar数据类型转换为日期时间数据类型会导致超出范围的值“

我需要这样的:

代码语言:javascript
复制
1990-02-01 00:00:00:000
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-12-24 17:48:25

您需要将格式为MM/DD/YYYY的Varchar转换为日期时间。

Sql server识别一组它能够自动解析的预定义日期格式。见这张作弊名单

您的输入格式对应于sql server日期格式101,因此您可以:

代码语言:javascript
复制
SELECT CONVERT(Datetime, '02/01/1990', 101) 
票数 0
EN

Stack Overflow用户

发布于 2018-12-24 17:36:56

选择转换(日期时间,'2011-09-28 18:01:00',120) -将其转换为日期时间选择转换( VARCHAR(30),@date ,105) -意大利语格式28-09-2011 18:01:00 +‘’+ SELECT ( VARCHAR(30),@date ,108 )-使用时间/分钟/秒的完整日期

票数 1
EN

Stack Overflow用户

发布于 2018-12-24 17:38:00

如果尝试在sql查询中执行此操作,则会使用语法进行操作。这里有个链接。SQL Server将Varchar转换为Datetime

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53916223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档