php sqlserver 日期转字符串,sqlserver 日期与字符串之间的转换

字符转换为日期时,Style的使用

--1. Style=101时,表示日期字符串为:mm/dd/yyyy格式

SELECT CONVERT(datetime,'11/1/2003',101)

--结果:2003-11-01 00:00:00.000

--2. Style=101时,表示日期字符串为:dd/mm/yyyy格式

SELECT CONVERT(datetime,'11/1/2003',103)

--结果:2003-01-11 00:00:00.000

/*== 日期转换为字符串 ==*/

DECLARE @dt datetime

SET @dt='2003-1-11'

--1. Style=101时,表示将日期转换为:mm/dd/yyyy 格式

SELECT CONVERT(varchar,@dt,101)

--结果:01/11/2003

--2. Style=103时,表示将日期转换为:dd/mm/yyyy 格式

SELECT CONVERT(varchar,@dt,103)

--结果:11/01/2003

/*== 这是很多人经常犯的错误,对非日期型转换使用日期的style样式 ==*/

SELECT CONVERT(varchar,'2003-1-11',101)

--结果:2003-1-11

--1.

/*--说明

SET DATEFORMAT设置对使用CONVERT把字符型日期转换为日期的处理也具有影响

但不影响明确指定了style的CONVERT处理。

--*/

--示例 ,在下面的示例中,第一个CONVERT转换未指定style,转换的结果受SET DATAFORMAT的影响,第二个CONVERT转换指定了style,转换结果受style的影响。

--设置输入日期顺序为 日/月/年

SET DATEFORMAT DMY

--不指定Style参数的CONVERT转换将受到SET DATEFORMAT的影响

SELECT CONVERT(datetime,'2-1-2005')

--结果: 2005-01-02 00:00:00.000

--指定Style参数的CONVERT转换不受SET DATEFORMAT的影响

SELECT CONVERT(datetime,'2-1-2005',101)

--结果: 2005-02-01 00:00:00.000

GO

--2.

/*--说明

如果输入的日期包含了世纪部分,则对日期进行解释处理时

年份的解释不受SET DATEFORMAT设置的影响。

--*/

--示例,在下面的代码中,同样的SET DATEFORMAT设置,输入日期的世纪部分与不输入日期的世纪部分,解释的日期结果不同。

DECLARE @dt datetime

--设置SET DATEFORMAT为:月日年

SET DATEFORMAT MDY

--输入的日期中指定世纪部分

SET @dt='01-2002-03'

SELECT @dt

--结果: 2002-01-03 00:00:00.000

--输入的日期中不指定世纪部分

SET @dt='01-02-03'

SELECT @dt

--结果: 2003-01-02 00:00:00.000

GO

--3.

/*--说明

如果输入的日期不包含日期分隔符,那么SQL Server在对日期进行解释时

将忽略SET DATEFORMAT的设置。

--*/

--示例,在下面的代码中,不包含日期分隔符的字符日期,在不同的SET DATEFORMAT设置下,其解释的结果是一样的。

DECLARE @dt datetime

--设置SET DATEFORMAT为:月日年

SET DATEFORMAT MDY

SET @dt='010203'

SELECT @dt

--结果: 2001-02-03 00:00:00.000

--设置SET DATEFORMAT为:日月年

SET DATEFORMAT DMY

SET @dt='010203'

SELECT @dt

--结果: 2001-02-03 00:00:00.000

--输入的日期中包含日期分隔符

SET @dt='01-02-03'

SELECT @dt

--结果: 2003-02-01 00:00:00.000

--以下示例演示了在不同的语言环境(SET LANGUAGE)下,DATENAME与CONVERT函数的不同结果。

USE master

--设置会话的语言环境为: English

SET LANGUAGE N'English'

SELECT

DATENAME(Month,GETDATE()) AS [Month],

DATENAME(Weekday,GETDATE()) AS [Weekday],

CONVERT(varchar,GETDATE(),109) AS [CONVERT]

/*--结果:

Month    Weekday   CONVERT

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

March    Tuesday   Mar 15 2005 8:59PM

--*/

--设置会话的语言环境为: 简体中文

SET LANGUAGE N'简体中文'

SELECT

DATENAME(Month,GETDATE()) AS [Month],

DATENAME(Weekday,GETDATE()) AS [Weekday],

CONVERT(varchar,GETDATE(),109) AS [CONVERT]

/*--结果

Month    Weekday    CONVERT

SQL Server 取日期时间格式 日期与字符串之间的转换

SQL Server 取日期时间部分   在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate()  用DateName()就可以获得相应的 ...

SQL Server日期与字符串之间的转换

本文导读:在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.下面主要就介绍一下SQL Serv ...

Java基础——基本类型和包装类、基本类型和字符串之间的转换

基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更 ...

C++中数字与字符串之间的转换,别人的,

C++中数字与字符串之间的转换   1.字符串数字之间的转换 (1)string --> char *   string str("OK");   char * p = st ...

Java 中基本类型和字符串之间的转换

Java 中基本类型和字符串之间的转换 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使 ...

JavaSE(六)包装类、基本类型和字符串之间的转换、==和equals的区别

一.包装类 Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足, 在设计类时为每个基本数据类型设计了一个对应的类进行代表,这 ...

java中数组、集合、字符串之间的转换,以及用加强for循环遍历

java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList list = new ...

Java学习--Java 中基本类型和字符串之间的转换

Java 中基本类型和字符串之间的转换 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使 ...

<摘录>Gson对Java嵌套对象和JSON字符串之间的转换

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识, ...

随机推荐

Github注册过程以及对管理软件的了解

二.目前流行的源程序管理软件和项目管理软件主要有以下一些: 1.Visual Source Safe 优点:如果开发工具是VS.NET,用VSS较合适,方便,安装配置和使用都简单,版本控制简单,打la ...

nios II--实验1——hello_world硬件部分

hello_world 硬件开发 新建原理图 1.打开Quartus II 11.0,新建一个工程,File -> New Project Wizard…,忽略Introduction,之间单击 ...

ExtJs gridPanel Column 时间格式化

var panel = new Ext.container.Viewport({ items: { xtype: 'gridpanel', id: 'gridPanel', store: store, ...

windows程序员进阶系列:《软件调试》之堆 (一)

windows程序员进阶系列:之堆 (一) 堆是软件在运行时动态申请内存空间的主要途径.从堆上申请来的空间需要程序员自己申请和释放,且申请和释放操作必须绝对匹配.忘记释放或者多 ...

js拖拽案例、自定义滚动条

简单实例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值