当前位置: 首页 > news >正文

SQL Server中的convert来转换时间

sql server-Convert DateTime 格式的转换(转)
将sqlserver中table表的[datetime]字段值‘2007-11-07 16:41:35.033’ 改为‘2007-11-07 00:00:00‘去除了时分秒.[datetime]字段要为datetime类型的哦. UPDATE table SET [datetime]= Convert(char(11),[datetime],120)

获取当前日期利用 convert 来转换成我们需要的datetime格式.
select CONVERT(varchar(12) , getdate(), 112 )
20040912
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 108 )
11:06:08
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1
------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177
------------------------------------------------------------

declare @dateTime DateTime--定义一个datetime的变量
set @dateTime=getdate(); --获取系统当前时间,并赋值给@dateTime字段

--短日期格式:yyyy-m-d
SELECT REPLACE(CONVERT(varchar(10),@dateTime,120),N'-0','-')

--长日期格式:yyyy年mm月dd日
SELECT STUFF(STUFF(CONVERT(char(8),@dateTime,112),5,0,N'年'),8,0,N'月')+N'日'

--长日期格式:yyyy年m月d日
SELECT DATENAME(Year,@dateTime)+N'年'+CAST(DATEPART(Month,@dateTime) AS varchar)+N'月'+DATENAME(Day,@dateTime)+N'日'

--完整日期+时间格式:yyyy-mm-dd hh:mi:ss:mmm
SELECT CONVERT(char(11),@dateTime,120)+CONVERT(char(12),@dateTime,114)

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

2、日期推算处理
DECLARE @dt datetime
SET @dt=GETDATE()
DECLARE @number int
SET @number=3
--1.指定日期该年的第一天或最后一天
--A. 年的第一天
SELECT CONVERT(char(5),@dt,120)+'1-1'
--B. 年的最后一天
SELECT CONVERT(char(5),@dt,120)+'12-31'
--2.指定日期所在季度的第一天或最后一天
--A. 季度的第一天
SELECT CONVERT(datetime,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)*3-Month(@dt)-2,
@dt),
120)+'1')
--B. 季度的最后一天(CASE判断法)
SELECT CONVERT(datetime,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)*3-Month(@dt),
@dt),
120)
+CASE WHEN DATEPART(Quarter,@dt) in(1,4)
THEN '31'ELSE '30' END)
--C. 季度的最后一天(直接推算法)
SELECT DATEADD(Day,-1,
CONVERT(char(8),
DATEADD(Month,
1+DATEPART(Quarter,@dt)*3-Month(@dt),
@dt),
120)+'1')
--3.指定日期所在月份的第一天或最后一天
--A. 月的第一天
SELECT CONVERT(datetime,CONVERT(char(8),@dt,120)+'1')
--B. 月的最后一天
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'1')
--C. 月的最后一天(容易使用的错误方法)
SELECT DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))
--4.指定日期所在周的任意一天
SELECT DATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)
--5.指定日期所在周的任意星期几
--A. 星期天做为一周的第1天
SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)
--B. 星期一做为一周的第1天
SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)
来自: http://hi.baidu.com/sidihu/blog/item/0cc4ae59fc1e188b800a1897.html

相关文章:

  • 日期工具
  • 静态路由作用和添加删除命令
  • jar/war/ear文件的区别
  • 自动装箱和自动拆箱
  • 从Hadoop框架与MapReduce模式中谈海量数据处理(淘宝技术架构)
  • jQuery获取Select选择的Text和Value:
  • unity-------------UI的界面调节
  • SQL : 根据列名求表名等小技巧
  • F5-WAF-12.0
  • 程序员编程艺术第十二~十五章:IP访问次数,回文等问题(初稿)
  • 读取Execl表数据 导入数据库
  • jQuery插件ReverseOrder实现Javascript倒序及了解prependTo函数
  • 洛谷—— P1041 传染病控制
  • Python学习系列-----第二章 操作符与表达式
  • BZOJ 1617 Usaco River Crossing
  • [NodeJS] 关于Buffer
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • CAP 一致性协议及应用解析
  • echarts花样作死的坑
  • JavaScript创建对象的四种方式
  • Rancher-k8s加速安装文档
  • vue 配置sass、scss全局变量
  • Vue.js源码(2):初探List Rendering
  • Zsh 开发指南(第十四篇 文件读写)
  • 机器学习中为什么要做归一化normalization
  • 在weex里面使用chart图表
  • 【云吞铺子】性能抖动剖析(二)
  • 曾刷新两项世界纪录,腾讯优图人脸检测算法 DSFD 正式开源 ...
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #Spring-boot高级
  • $.ajax()
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (poj1.2.1)1970(筛选法模拟)
  • (动态规划)5. 最长回文子串 java解决
  • (二)丶RabbitMQ的六大核心
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (三) diretfbrc详解
  • (三)Honghu Cloud云架构一定时调度平台
  • (四)Controller接口控制器详解(三)
  • (转)http-server应用
  • (转)jQuery 基础
  • (转)平衡树
  • ***检测工具之RKHunter AIDE
  • .NET4.0并行计算技术基础(1)
  • .NET开源项目介绍及资源推荐:数据持久层
  • .net项目IIS、VS 附加进程调试
  • .Net语言中的StringBuilder:入门到精通
  • @EventListener注解使用说明
  • [ 转载 ] SharePoint 资料
  • [<MySQL优化总结>]
  • [<死锁专题>]