SQL SERVER 日期格式转换详解_Mysql

SQL SERVER 2000用sql语句如何获得当前系统时间
就是用GETDATE();

Sql中的getDate()2008年01月08日 星期二 14:59
Sql Server 中一个非常强大的日期格式化函数

复制代码 代码如下:

Select CONVERT(varchar(100), GETDATE(), 0);-- 05 16 2008 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1);-- 05/16/08
Select CONVERT(varchar(100), GETDATE(), 2);-- 08.05.16
Select CONVERT(varchar(100), GETDATE(), 3);-- 16/05/08
Select CONVERT(varchar(100), GETDATE(), 4);-- 16.05.08
Select CONVERT(varchar(100), GETDATE(), 5);-- 16-05-08
Select CONVERT(varchar(100), GETDATE(), 6);-- 16 05 08
Select CONVERT(varchar(100), GETDATE(), 7);-- 05 16, 08
Select CONVERT(varchar(100), GETDATE(), 8);-- 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9);-- 05 16 2008 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10);-- 05-16-08
Select CONVERT(varchar(100), GETDATE(), 11);-- 08/05/16
Select CONVERT(varchar(100), GETDATE(), 12);-- 080516
Select CONVERT(varchar(100), GETDATE(), 13);-- 16 05 2008 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14);-- 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20);-- 2008-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21);-- 2008-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22);-- 05/16/08 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23);-- 2008-05-16
Select CONVERT(varchar(100), GETDATE(), 24);-- 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25);-- 2008-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100);-- 05 16 2008 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101);-- 05/16/2008
Select CONVERT(varchar(100), GETDATE(), 102);-- 2008.05.16
Select CONVERT(varchar(100), GETDATE(), 103);-- 16/05/2008
Select CONVERT(varchar(100), GETDATE(), 104);-- 16.05.2008
Select CONVERT(varchar(100), GETDATE(), 105);-- 16-05-2008
Select CONVERT(varchar(100), GETDATE(), 106);-- 16 05 2008
Select CONVERT(varchar(100), GETDATE(), 107);-- 05 16, 2008
Select CONVERT(varchar(100), GETDATE(), 108);-- 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109);-- 05 16 2008 10:57:49:437AM
Select CONVERT(varchar(100), GETDATE(), 110);-- 05-16-2008
Select CONVERT(varchar(100), GETDATE(), 111);-- 2008/05/16
Select CONVERT(varchar(100), GETDATE(), 112);-- 20080516
Select CONVERT(varchar(100), GETDATE(), 113);-- 16 05 2008 10:57:49:513
Select CONVERT(varchar(100), GETDATE(), 114);-- 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120);-- 2008-05-16 10:57:49
Select CONVERT(varchar(100), GETDATE(), 121);-- 2008-05-16 10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126);-- 2008-05-16T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 130);-- 18 ???? ?????? 1427 10:57:49:907AM

说明:
使用 CONVERT:

复制代码 代码如下:

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

参数
expression

是任何有效的 Microsoft SQL Server 表达式。。
data_type

目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。
length
nchar、nvarchar、char、varchar、binary 或 varbinary 数据类型的可选参数。
style

日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。

SQL Server 支持使用科威特算法的阿拉伯样式中的数据格式。

在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)。

不带世纪数位 (yy) 带世纪数位 (yyyy)
标准
输入/输出**
- 0 或 100 (*) 默认值 mon dd yyyy hh:miAM(或 PM)
1 101 美国 mm/dd/yyyy
2 102 ANSI yy.mm.dd
3 103 英国/法国 dd/mm/yy
4 104 德国 dd.mm.yy
5 105 意大利 dd-mm-yy
6 106 - dd mon yy
7 107 - mon dd, yy
8 108 - hh:mm:ss
- 9 或 109 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM)
10 110 美国 mm-dd-yy
11 111 日本 yy/mm/dd
12 112 ISO yymmdd
- 13 或 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 或 120 (*) ODBC 规范 yyyy-mm-dd hh:mm:ss[.fff]
- 21 或 121 (*) ODBC 规范(带毫秒) yyyy-mm-dd hh:mm:ss[.fff]
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss.mmm(不含空格)
- 130* Hijri**** dd mon yyyy hh:mi:ss:mmmAM
- 131* Hijri**** dd/mm/yy hh:mi:ss:mmmAM

* 默认值(style 0 或 100、9 或 109、13 或 113、20 或 120、21 或 121)始终返回世纪数位 (yyyy)。
** 当转换为 datetime时输入;当转换为字符数据时输出。
*** 专门用于 XML。对于从 datetime或 smalldatetime 到 character 数据的转换,输出格式如表中所示。对于从 float、money 或 smallmoney 到 character 数据的转换,输出等同于 style 2。对于从 real 到 character 数据的转换,输出等同于 style 1。
****Hijri 是具有几种变化形式的日历系统,Microsoft SQL Server 2000 使用其中的科威特算法。

重要 默认情况下,SQL Server 根据截止年份 2049 解释两位数字的年份。即,两位数字的年份 49 被解释为 2049,而两位数字的年份 50 被解释为 1950。许多客户端应用程序(例如那些基于 OLE 自动化对象的客户端应用程序)都使用 2030 作为截止年份。SQL Server 提供一个配置选项("两位数字的截止年份"),借以更改 SQL Server 所使用的截止年份并对日期进行一致性处理。然而最安全的办法是指定四位数字年份。

当从 smalldatetime 转换为字符数据时,包含秒或毫秒的样式将在这些位置上显示零。当从 datetime 或 smalldatetime 值进行转换时,可以通过使用适当的 char 或 varchar 数据类型长度来截断不需要的日期部分。

复制代码 代码如下:

Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

时间: 2024-12-23 03:06:51

SQL SERVER 日期格式转换详解_Mysql的相关文章

SQL SERVER分区具体例子详解

原文:SQL SERVER分区具体例子详解 在日常工作中,我们会遇到以下的情况,一个表每日数万级的增长,而查询的数据通常是在本月或今年,以前的数据偶尔会用到,但查询和插入的效率越来越慢,用数据库分区会有助于解决这个问题.关于分区的理论知识网上很多我这里就不在累赘,我从一个实际例子出发,看如何将一个已经运行了很长时间的普通表进行分区. 提出问题 需解决问题:有一个数据表数据很大,我们通常的查询是在一个季度中.我们需要将以往年份的数据按不同年份存在文件组里,当年的数据分为4个季度存,如果到了新的一年

SQL Server CHARINDEX和PATINDEX详解

server|详解 SQL Server CHARINDEX和PATINDEX详解        假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.我将告诉你这两个函数是如何运转的,解释他们的区别.同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题.        CHARINDEX和PATINDEX函数常常用来在一段字符中搜索字符或者字符串.

SQL Server 事务隔离级别详解

原文:SQL Server 事务隔离级别详解 标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设计数据库事务级别 SQL 事务隔离级别 概述      隔离级别用于决定如果控制并发用户如何读写数据的操作,同时对性能也有一定的影响作用. 步骤 事务隔离级别通过影响读操作来间接地影响写操作:可以在回话级别上设置事务隔离级别也可以在查询(表级别)级别上设置事务隔离级别.事务隔离级别总共有6个隔离级别:READ UNCOMMITTED(未提交读,读脏),相当于(NOL

SQL Server事务隔离级别详解

SQL Server事务隔离级别详解 标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设置数据库事务级别 SQL 事务隔离级别 概述      隔离级别用于决定如果控制并发用户如何读写数据的操作,同时对性能也有一定的影响作用. 步骤 事务隔离级别通过影响读操作来间接地影响写操作:可以在回话级别上设置事务隔离级别也可以在查询(表级别)级别上设置事务隔离级别.事务隔离级别总共有6个隔离级别:READ UNCOMMITTED(未提交读,读脏),相当于(NOLOCK)

SQL Server日期格式的转换

server|转换 SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12 11:06:08.177 这对于在要不同数据库间转移数据或者习惯oracle日期格式YYYY-MM-DD HH24:MI:SS的人多少有些不方便. 我整理了一下SQL Server里面可能经常会用到的日期格式转换方法: 举例如下: select CONVERT(varchar, getdate(),

SQL Server 2008日志传送详解

一.什么是日志传送? 原理很简单,三个动作六个字:备份->复制->恢复. 如果由人来完成这个三个动作,只能叫日志搬运工:而由SQL Server Job自动完成,就叫日志传送.同样的事情,不一样的档次,所以叫法也不一样. 二.日志传送能解决什么问题? 解决数据库的多服务器热备份问题.多台服务器定时备份,随时可以作为主数据库服务器的替补. 三.日志传送的优点是什么? 简单!比SQL Server的数据库复制.镜像简单多了. 四.日志传送的缺点是什么? 日志文件的传输只支持Windows文件共享的

SQL Server 事务和锁详解

最近在项目中进行压力测试遇到了数据库的死锁问题,简言之,如下的代码在 SERIALIZABLE 隔离级别造成了死锁:  代码如下 复制代码 SELECT @findCount=COUNT(id) FROM MyTable WHERE [fk_related_id]=@Argument IF (@findCount > 0) BEGIN ROLLBACK TRANSACTION RETURN ERROR_CODE END INSERT INTO MyTable ([fk_related_id],-

MySQL解决SQL注入的另类方法详解_Mysql

本文实例讲述了MySQL解决SQL注入的另类方法.分享给大家供大家参考,具体如下: 问题解读 我觉得,这个问题每年带来的成本可以高达数十亿美元了.本文就来谈谈,假定我们有如下 SQL 模板语句: select * from T where f1 = '{value1}' and f2 = {value2} 现在我们需要根据用户输入值填充该语句: value1=hello value2=5 我们得到了下面的 SQL 语句,我们再提交给数据库: select * from T where f1='h

Microsoft SQL Server数据库开发问题详解

我要强调的是,从技术角度来说,不使用T-SQL来编写存储过程是可能的.那么有没有理由这么做呢?一种情况就是这是一个用来从普通文件或者网络服务中检索数据的CLR存储过程,并将数据格式设置为行集.这里可能就会用到不需要T-SQL的操作--但是这并不是对T -SQL存储过程能力的一个很好的比喻. 1.SQL Server 2005中的存储过程并发问题 问:我在SQL Server2005中遇到了并发问题.我持有车票的公共汽车上有一些空闲的座位.我在插入销售的查票之前,需要查看是否还有空闲的座位.我的存