首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从日期时间列中提取数据- Server契约

问从日期时间列中提取数据- Server契约
EN

Stack Overflow用户
提问于 2016-09-04 13:14:44
回答 10查看 29.2K关注 0票数 1

我使用的是SQLServerCompact4.0版本,虽然在google中可能看起来很简单,但我尝试过的示例都不起作用。

我的列signup_date是一个值为04-09-2016 09:05:00的DateTime。

到目前为止,我尝试过的都没有成功:

代码语言:javascript
复制
SELECT FORMAT(signup_date, 'Y-m-d') AS signup_date;
SELECT CONVERT(signup_date, GETDATE()) AS signup_date
SELECT CAST(data_registo, date) AS signup_date

我发现我可以使用DATEPART函数,但这会迫使我连接这些值,这是正确的路径吗?如果是的话,我该怎么做Y-m-d?

代码语言:javascript
复制
SELECT DATEPART(month, signup_date)  
EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2016-09-04 14:15:19

Server契约没有日期类型。

如果不想查看时间,请将datetime值转换为字符串:

代码语言:javascript
复制
SELECT CONVERT(nvarchar(10), GETDATE(), 120)

(这已经过测试,并实际在SQLServerCompact上运行)

票数 3
EN

Stack Overflow用户

发布于 2021-09-02 19:56:48

实际上,使用CAST函数只是语法上的一个小错误。在CAST函数中,需要有“as”即强制转换(data_registo作为日期)。

代码语言:javascript
复制
SELECT CAST(data_registo as date) AS signup_date;
票数 2
EN

Stack Overflow用户

发布于 2019-05-01 20:30:31

大多数答案都是为了达到同样的目的,但是对代码的解释是不够的。

代码语言:javascript
复制
CONVERT(date, Date_Updated, 120)

此代码使用mssql进行转换。第一项“日期”是要返回的数据类型。它可以是'datetime','varchar‘等等。第二个项目'Date_Updated’是要转换的列的名称。最后一项“120”是要返回的日期样式。有不同的样式,输入的代码将决定输出。'120‘代表YYYY-MM-DD.希望这能有所帮助

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

https://stackoverflow.com/questions/39317296

复制
相关文章

相似问题

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