好吧 QQ群里被问到这种问题,还是这里写一下吧。

DECLARE
@date
DATETIME
=
getdate();

SELECT
EOMONTH
(@date)
AS
'Last Day Of This Month',

EOMONTH
(@date, 1)
AS
'Last Day Of Next Month',

EOMONTH
(@date,
-1)
AS
'Last Day Of Previous Month',

EOMONTH
(@date,
-2)
AS
'LAST Last Day Of Previous Month'

     ;

特殊的29日也可以哦
DECLARE
@date
DATETIME
=
'2000-03-01';

SELECT
EOMONTH
(@date)
AS
'Last Day Of This Month',

EOMONTH
(@date, 1)
AS
'Last Day Of Next Month',

EOMONTH
(@date,
-1)
AS
'Last Day Of Previous Month',

EOMONTH
(@date,
-2)
AS
'LAST Last Day Of Previous Month'

     ;

 

其实一个很闲的印度老外已经Code Prject 上写了给很全各个版本都有的表格了。。。您们慢参考我就不重复劳动了。

http://www.codeproject.com/Articles/566542/Date-and-Time-Data-Types-and-Functions-SQL-Server#29

好吧 SQL server 2008 中没有EOMONTH函数 那只能用dateadd拼接的方法来做

DECLARE
@date
DATETIME
=
'2000-03-02';

select
dateadd(dd,-day(@date),dateadd(m,1,@date))
AS
'Last Day Of This Month',

         dateadd(dd,-day(@date),dateadd(m,2,@date))
AS
'Last Day Of Next Month',

         dateadd(dd,-day(@date),dateadd(m,0,@date))
AS
'Last Day Of Previous Month',

         dateadd(dd,-day(@date),dateadd(m,-1,@date))
AS
'LAST Last Day Of Previous Monthh'

给懒人

SQL server 2012 如何取上个月的最后一天的更多相关文章

  1. SQL Server 2012 新特性

    --Concat示例 ,null,'RTM') --Format实例 DECLARE @d DATETIME = GETDATE(); SELECT FORMAT( @d, 'd', 'en-US' ...

  2. SQL Server 2012 T-SQL 新特性

    序列 Sequence SQL Server 现在将序列当成一个对象来实现,创建一个序列的例子语法如下: CREATE SEQUENCE DemoSequence START WITH 1 INCRE ...

  3. SQL Server 2012 各版本功能比较

    有关不同版本的 SQL Server 2012 所支持的功能的详细信息. 功能名称 Enterprise 商业智能 Standard Web Express with Advanced Service ...

  4. 【转】Microsoft® SQL Server® 2012 Performance Dashboard Reports

    http://www.cnblogs.com/shanyou/archive/2013/02/12/2910232.html SQL Server Performance Dashboard Repo ...

  5. SQL Server 2012 Features

    SQL SQL Server 2012 新增加的几个函数: SELECT CONVERT (INT, 'Angkor-216.00') 直接报错 SELECT TRY_CONVERT(INT, 'SS ...

  6. SQL Server 2012 Enterprise Edition安装过程详解(包含每一步设置的含义)

    一.启动安装程序,点击“安装”选项卡,选择“全新SQL Server独立安装或向现有安装添加功能”.(首次安装数据库系统或向现有数据库系统添加功能,均选择此选项) 二.随后,安装程序进行“安装程序支持 ...

  7. SQL Server 2012 R2升级到SQL Server 2016无法正常启动数据库服务解决方案

    原定周末把公司的TFS升级到2018,由于TFS 2018需要SQL Server至少是2016以上版本,所以还需要将原来的SQL Server 2012 R2一并升级.今天早上负责的同事告诉我升级失 ...

  8. 微软BI 之SSAS 系列 - 在SQL Server 2012 中开发 Analysis Services Multidimensional Project

    SQL Server 2012 中提供了开发 SSAS 项目的两种模型,一种是新增加的 Tabular Model 表格模型,另一种就是原始的 Multidimensional Model 多维模型. ...

  9. 疑难杂症--SQL SERVER 2012下数据库内存异常回收

    --=================================================================== --背景: 在一台SQL SERVER 2012 SP1(1 ...

随机推荐

  1. 初谈SQL Server逻辑读、物理读、预读【转】

    前言 本文涉及的内容均不是原创,是记录自己在学习IO.执行计划的过程中学习其他大牛的博客和心得并记录下来,之所以想写下来是为了记录自己在追溯的过程遇到的几个问题,并把这些问题弄清楚. 本章最后已贴出原 ...

  2. java md5方法 for Android

    很简单的方法 public static String md5(String string) { byte[] hash; try { hash = MessageDigest.getInstance ...

  3. 引用类型传递 ListView展示数据

    教师评分项目总结 //创建一个SE员工类 1.1       //首先分析项目 * 01.我需要在LIstView控件中显示三个员工的信息 * 那么可以定义一个长度为3的数组来承载要显示的数据 * 0 ...

  4. 三种情形容易引起Azure虚拟机重新启动

      与虚拟机或云服务角色中运行的代码有关的问题可能会导致重新启动.但是,Microsoft 在以下情况下也会重新启动您的角色: 来宾操作系统更新 – 仅影响云服务 Web 和辅助角色.有关如何限制这些 ...

  5. Linux下platform设备以及platform设备和驱动注册的先后顺序

    platform是Linux系统提供的一种管理设备的手段,所有SOC系统中集成的独立的外设控制器.挂接在SOC内存空间的外设等都属Platform设备.如ARM S3C6410处理器中,把内部集成的I ...

  6. HW3.2

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  7. List使用Foreach 修改集合时,会报错的解决方案 (Error: Collection was modified; enumeration operation may not execute. ) - 摘自网络

    当用foreach遍历Collection时,如果对Collection有Add或者Remove操作时,会发生以下运行时错误: "Collection was modified; enume ...

  8. PC-hosts 的使用 [可使电脑无法正常上网]

    1.文件中记录了IP与服务器. 2.此文件修改后,电脑将无法正常上网,请别乱动. 文件地址: C:\WINDOWS\system32\drivers\etc     [hosts]

  9. Go Slices: usage and internals

    Introduction Go's slice type provides a convenient and efficient means of working with sequences of ...

  10. 递归小demo(1-100的和)

    public class demo1 { public static void main(String[] args) { //初始值为100 int n = 100; //调用number方法,返回 ...