标签: datepart函数sql分别用日期月年 分组group by 分组
2013-12-26 15:31 20764人阅读 评论(1) 收藏 举报
分类: SQL Server(21)
版权声明:本文为博主原创文章,未经博主允许不得转载。

[sql] view plain copy

--以2013-12-10 12:56:55为例
--convert(nvarchar(10),CreateDate,120) => 2013-12-10
--DATEPART(month,CreateDate) => 12
--DATEPART(year,CreateDate) => 2013

--还可以这样
--年
select datepart(YEAR,'2013-06-08')
select datepart(yyyy,'2013-06-08')
select datepart(yy,'2013-06-08')
--月
select datepart(MONTH,'2013-06-08')
select datepart(mm,'2013-06-08')
select datepart(m,'2013-06-08')
--日
select datepart(dd,'2013-06-08')
--1年中的第多少天
select datepart(dy,'2013-06-08')
--季度
select datepart(qq,'2013-06-08')
--1年中的第多少周
select datepart(wk,'2013-06-08')
--星期
select datepart(dw,'2013-06-08') 会输出 7
select datepart(weekday, '2013-06-08') 会输出 7
select datename(weekday, '2013-06-08') 会输出 星期六

/*
* 设置语言为英语
*/
set language N'English' --设置语言为英语
select datename(weekday, '2013-06-08') 会输出 Saturday

/*
* 设置语言为简体中文
*/
set language N'Simplified Chinese' --设置语言为简体中文
select datename(weekday, '2013-06-08') 会输出 星期六

/*
* 设置一周的第一天为星期一
*/
set datefirst 1 --设置一周的第一天为星期一(美国一周的第一天习惯为星期天)
select datepart(weekday, '2013-06-08') 会输出 6

/*
* 设置一周的第一天为星期日
*/
set datefirst 7 --设置一周的第一天为星期日(美国一周的第一天习惯为星期天)
select datepart(weekday, '2013-06-08') 会输出 7

/*
* 查询当前会话的 datefirst 设置值
*/
select @@datefirst

SELECT CONVERT(VARCHAR(10),GETDATE(),120) --2015-07-13
SELECT CONVERT(VARCHAR(10),GETDATE(),101) --07/13/2015

--按日分组:2013-01-01
select convert(nvarchar(10),CreateDate,120) as Times,ISNULL(sum(Unit),0.0) as Drinking from pdt_Out
group by convert(nvarchar(10),CreateDate,120)
go

--按月分组:2012-01
select DATEPART(month,CreateDate) as Times,sum(Unit) as Totals from pdt_Out
group by DATEPART(month,CreateDate)
go

--按年分组:2013
select DATEPART(year,CreateDate) as Times,sum(Unit) as Totals from pdt_Out
group by DATEPART(year,CreateDate)
go

sql分别用日期、月、年 分组 group by 分组,datepart函数的更多相关文章

  1. 【SQL】分组数据,过滤分组-group by , having

    学习笔记,原文来自http://blog.csdn.net/robinjwong/article/details/24845125 创建分组 - GROUP BY 分组是在SELECT语句的GROUP ...

  2. sql server group by 分组带sum avg求和需要注意的一点

    这是在写SQL语句遇到的一个sum  和group bu分组的问题

  3. 170.分组-group、permission、user的操作

    分组 1.Group.objects.create(group_name):创建分组. 2.group.permissions:某个分组上的权限.多对多关系. (1)group.permissions ...

  4. 第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all; Select 列 into 新表;字符串函数;日期函数

    第17课-数据库开发及ado.net 聚合函数,模糊查询like,通配符.空值处理.order by排序.分组group by-having.类型转换-cast,Convert.union all;  ...

  5. SQL Server 根据日期分组、 根据时间段分组(每三个小时一组)

    所用数据表: 一.根据日期分组 1. 使用convert() 函数方式 --根据年月 ),CreatTime,)日期,COUNT(*) 次数,sum(Money)总数 from Orders ),Cr ...

  6. Oracle SQL篇(四)group by 分组与分组的加强 rollup

        分组操作group by 和分组的强化(rollup) 分组操作和分组函数的使用,对于编写SQL语句的人来说,是最基本的概念. 我们来看下面的例子: 在这里我们使用员工表EMP scott@D ...

  7. mongoDB 分组并对分组结果筛选类似于SQL中的(group by xxx having ) 附带Java代码

    今天需要做一个筛选程序,因为数据放在mongodb中,没写过分组的查询语句,查了一些资料,终于写出来了,分享给各位小伙伴 需求是 查询 学员 在2019-07-29之后未同步的数据(同一个学员需要2条 ...

  8. SQL实现group by 分组后组内排序

    在一个月黑风高的夜晚,自己无聊学习的SQL的时候,练习,突发奇想的想实现一个功能查询,一张成绩表有如下字段,班级ID,英语成绩,数据成绩,语文成绩如下图 实现 查询出 每个班级英语成绩最高的前两名的记 ...

  9. ysql常用sql语句(12)- group by 分组查询

    测试必备的Mysql常用sql语句,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1683347.html 前言 ...

随机推荐

  1. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli2/Option

    今天,在做canopy算法实例时,遇到这个问题,所以记录下来.下面是源码: package czx.com.mahout; import java.io.IOException; import org ...

  2. jmeter性能测试抛除工具用命令测试的方法

    1.我们有时会遇到那种图片或文件大的传输数据,容易将jmeter测试工具卡死,这个时候就需要抛除测试工具,直接用命令进行测试(window和linux都适用) 2.首先在jmeter工具上把性能测试脚 ...

  3. Android真机测试时无法连接服务器

    之前服务器的通信一直是在模拟机上实现的,今天用在真机上却不成功.百度之后发现是安卓9以后禁止使用HTTP直接访问服务器.记录一下以后使用. 参考博文:https://blog.csdn.net/don ...

  4. 编程的智慧(王垠)(http://www.cocoachina.com/programmer/20151125/14410.html)

    编程是一件创造性的工作,是一门艺术.精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称三天瘦二十斤的减肥药,它并不能代替你自己的勤奋.然而我希望它能给迷惑中的人们指出一些正确 ...

  5. linux 防止误操作 mysql 数据库技巧

    mysql 帮助说明 1[oldboy_c64 ~]# mysql --help|grep dummy 2 -U, --i-am-a-dummy Synonym for option --safe-u ...

  6. lilybbs-faq - linux入门以及百合 Linux 版精华区导读

    QUESTIONS 问题与解答 不需要任何命令的简单介绍 历史 (APUE 提到了1990年之前的unix历史,还有各种标准 ANSI ISO IEEE posix xpg3.... 但是linux ...

  7. VB中RaiseEvent语句的功能及用法

    Creat a new class named Class1, it's codes like this: Public Event MyEvent() Public Sub RaiseTheEven ...

  8. TFServering和docker

    nvidia-docker安装:https://github.com/NVIDIA/nvidia-docker nvidia-docker的基本操作:https://blog.csdn.net/pan ...

  9. 通过jenkins给gitlab某代码路径打tag的方式

    1.构建后设置里的git publisher插件 https://blog.csdn.net/workdsz/article/details/77931812 2.通过gitlab api接口来 ht ...

  10. gradle配置国内阿里云镜像

    对单个项目生效,在项目中的build.gradle修改内容 buildscript { repositories { maven { url 'http://maven.aliyun.com/nexu ...