• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
轶东的程序世界
博客园       新随笔    联系   管理    订阅  订阅

sql server建多个文件组

在c#中有个Date属性用于返回日期,其实就是当天0点。

DateTime dtNow = DateTime.Now;
DateTime dtNow2 = dtNow.Date;
Console.WriteLine("dtNow=" + dtNow);
Console.WriteLine("dtNow2=" + dtNow2);

image

那么SQL Server中有没有这个呢?开始百度,发现这个真没有!

但是方法还是有的,基本上是这两种:

1)直接转成varchar。

2)把年月日取出来转varchar再拼接起来。

我一直使用第2种方法,写了个函数:

Create function [dbo].[GetDateOnly]
(
    @d as datetime
)
returns smalldatetime
 AS
begin
    declare @OutputD smalldatetime;
    declare @y int=DATEPART(year, @d);
    declare @MH int=DATEPART(month, @d);
    declare @dy int=DATEPART(day, @d);
    declare @s varchar(50);
    set @s=convert(varchar(4),@y)+'-'+convert(varchar(2),@MH)+'-'+convert(varchar(2),@dy);
    set @OutputD=convert(smalldatetime,@s);
    return @OutputD;
end

然而今天查看msdn官方文档https://msdn.microsoft.com/zh-cn/library/ms186724.aspx,发现SQL Server中还有个date类型

 

image

这不就是想要的日期吗?

select convert(date,getdate())
select convert(date,'2016-11-5 12:20:45.567')
image
posted @ 2016-11-18 15:28  赵轶东  阅读(29645)  评论(1)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3