zoukankan      html  css  js  c++  java
  • sql日期操作

    CONVERT(varchar(10),getDate(),120) 



    求得到"昨天,今天"日期函数的SQL 


    所属分类:MS-SQL Server 基础类 

    ---------------------------------------------------------------------- 

    Convert(Datetime,GetDate(),2) 

    GetDate()得到今天日期2007-03-26 16:14:12.187 

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写? 

    2.求以下日期SQL: 

    昨天  

    明天 

    最近七天 

    随后七天 

    上周 

    本周 

    下周 

    上月 

    本月 

    下月 

    请高手帮忙。谢谢 

    ---------------------------------------------------------------------- 

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写? 

    select convert(varchar(10),getdate(),120) 

    -------------------------------------------------------- 

    --1. 

    Select Convert(Varchar(10), GetDate(), 120) 

    Select Convert(Varchar(10), GetDate(), 121) 

    -------------------------------------------------------- 

    2.求以下日期SQL: 

    昨天  

    select convert(varchar(10),getdate() - 1,120) 

    明天 

    select convert(varchar(10),getdate() + 1,120) 

    最近七天 

    select * from tb where 时间字段 >= convert(varchar(10),getdate() - 7,120) 

    随后七天 

    select * from tb where 时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段 

    -------------------------------------------------------- 

    convert和dateadd函数结合使用就可以了。 

    -------------------------------------------------------- 

    用datediff(day,时间列,getdate()) 

    -------------------------------------------------------- 

    上月 

    select * from tb where month(时间字段) = month(getdate()) - 1 

    本月 

    select * from tb where month(时间字段) = month(getdate()) 

    下月 

    select * from tb where month(时间字段) = month(getdate()) + 1 

    -------------------------------------------------------- 

    --2 

    --如果是在表中查詢 

    --昨天  

    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) = 1 

    --明天 

    Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) = 1 

    --最近七天 

    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) <= 7 

    --随后七天 

    Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) <= 7 

    --上周 

    Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 1 

    --本周 

    Select * From TableName Where DateDiff(wk, DateTimCol, GetDate()) = 0 

    --下周 

    Select * From TableName Where DateDiff(wk, GetDate(), DateTimCol ) = 1 

    --上月 

    Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 1 

    --本月 

    Select * From TableName Where DateDiff(mm, DateTimCol, GetDate()) = 0 

    --下月 

    Select * From TableName Where DateDiff(mm, GetDate(), DateTimCol ) = 1 

    -------------------------------------------------------- 

    本周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = 0 

    上周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = 1 

    下周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = -1 

    -------------------------------------------------------- 

    1.现在我需要得到只是日期部分,时间部分不要,SQL怎么写? 

    select convert(varchar(10),getdate(),120) 

    2.求以下日期SQL: 

    昨天  

    select convert(varchar(10),getdate() - 1,120) 

    明天 

    select convert(varchar(10),getdate() + 1,120) 

    最近七天 

    select * from tb where 时间字段 >= convert(varchar(10),getdate() - 7,120) 

    随后七天 

    select * from tb where 时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段 

    上月 

    select * from tb where month(时间字段) = month(getdate()) - 1 

    本月 

    select * from tb where month(时间字段) = month(getdate()) 

    下月 

    select * from tb where month(时间字段) = month(getdate()) + 1 

    本周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = 0 

    上周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = 1 

    下周 

    select * from tb where datediff(week , 时间字段 ,getdate()) = -1 


    -------------------------------------------------------- 

    昨天:dateadd(day,-1,getdate()) 

    明天:dateadd(day,1,getdate()) 

    上月:month(dateadd(month, -1, getdate())) 

    本月:month(getdate()) 

    下月:month(dateadd(month, 1, getdate()))

  • 相关阅读:
    HDU_1846 Brave Game(sg函数简化版)
    POJ 3225 Help with Intervals(线段树)
    ZOJ_3501 Roman Order
    HDU_1527 取石子游戏(威佐夫博弈)
    HDU_2112 HDU Today(DIjkstra + map映射)
    HDU_3339 In Action(Dijkstra + DP)
    单链表的实现(课本上的算法)
    haproxy 基于 uri 实现调度
    haproxy 基于 cookie 实现 session 绑定
    [转]ASP.NET 虚拟主机安全漏洞解决方案
  • 原文地址:https://www.cnblogs.com/GreenGrass/p/3007131.html
Copyright © 2011-2022 走看看