SQL区某sql 日期数据横排前后几月数据

sql如何取每月固定日期至某一日期的数据
[问题点数:20分,结帖人hzliuhai88]
sql如何取每月固定日期至某一日期的数据
[问题点数:20分,结帖人hzliuhai88]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关推荐:
2011年4月 Windows专区大版内专家分月排行榜第三2011年2月 Windows专区大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。SQL只取日期的年月日部分
SQL只取日期的年月日部分
select CONVERT(varchar, getdate(), 120 )&
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),\'-\',\'\'),\' \',\'\'),\':\',\'\')&
select CONVERT(varchar(12) , getdate(), 111 )&
select CONVERT(varchar(12) , getdate(), 112 )&
select CONVERT(varchar(12) , getdate(), 102 )&
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 )&
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 @tt varchar(4),@pp varchar(8) ,@ss varchar(4),@aa varchar(16)&
set @tt=rtrim(cast(month(getdate()) as varchar(10)))&
set @ss=rtrim(cast(day(getdate()) as varchar(10)))&
select @pp=rtrim(cast(year(getdate()) as varchar(10)))&
select @aa=@pp+@tt+@ss&
select @aa&
只显示年月,不显示日:select datepart(year,getdate())*100+datepart(month,getdate())&
& & & & & & & & & &200811SQL Server 2008使用日期时间数据类型
IT168网站原创
 作者: 微软中国 编辑:
【IT168 技术文档】SQL Server 2008 日期/时间数据类型目录准备工作&1练习1:浏览日期与时间数据类型&2练习 2:处理日期和时间数据类型&6准备工作预计完成本实验所需的时间40 分钟目标在完成本实验后,您将可以:处理SQL Server 2008当中的日期/时间数据类型先决条件在完成本实验前,您必须具有:编写Transact-SQL 脚本与使用SQL Server Management Studio的相关经验。实验场景在本实验当中,您将会看到在SQL Server 2005当中,处理日期与时间所面临的问题与缺陷。您将会使用SQL Server 2008中发布的新的数据类型和新的功能,通过修改数据库架构来修改现有数据,并实现日期/时间数据类型的最佳实验。虚拟机环境 从开始菜单或桌面上启用Microsoft Virtual PC 。如果Virtual PC 控制台没有启用,请查看系统托盘,然后双击系统托盘当中的Microsoft Virtual PC 。选择Sql08 然后点击Start。在虚拟机运行起来后,可以通过点击右Alt+Del 来向虚拟机发送一个Ctrl+Alt+Del 命令。在登录窗口中,输入以下信息:User name: administratorPassword: password01!&练习1:浏览日期与时间数据类型在SQL Server 2008 中,引入了新的日期与时间数据类型。这些新的数据类型的引入,可以帮助您更好的存储与处理与日期和时间相关的数据,包括多时区的支持,增强的日期计算功能。这些新的数据类型包括:&&datetime2&&date&&time&&datetimeoffset启动 SQL Server Management Studio点击Start | All Programs | Microsoft SQL Server 2008 | SQL Management Studio& ,启动SQL Server Management Studio。在Connect to Server对话框中输入下列信息,然后点击 Connect 按钮:Server type: Database EngineServer name: (local)Authentication: Windows Authentication点击File | Open | File。打开C:\SQLHOLS 文件夹,然后打开Date Time Datatype 目录当中的Labscript.sql 脚本文件。创建实验数据库并浏览数据类型查看并选中 下列代码并点击Execute:CREATE DATABASE LABDBGO查看并 选中 下列代码并点击Execute:select * from sys.systypes where name like '%date%' or name like '%time%'查看并 选中 下列代码并点击Execute:USE LABDBGOCREATE TABLE TBL_NewDatetimetypes (DateValue date, Timevalue Time, DateTimeOffset datetimeoffset, Datetime2value datetime2)查看并 选中 下列代码并点击Execute:INSERT&&INTO TBL_NewDatetimetypes values (SYSDATETIME(),SYSDATETIME(),SYSDATETIMEOFFSET(),SYSUTCDATETIME())注意: 上面的语句使用了下面几个函数:SYSDATETIME & 获取当前数据库系统的时间戳,并返回一个datetime2(7) 的值。数据库时间中不包含时区信息。这个值是从当前SQL Server 实例所运行的操作系统的时间来获得的。SYSDATETIMEOFFSET - 获取当前数据库系统的时间戳,并返回一个datetime2(7) 的值。这个值是从当前SQL Server 实例所运行的操作系统的时间来获得的。SYSDATETIME 和 SYSUTCDATETIME 比GETDATE与GETUTCDATE在秒上拥有更加细小的精确度。SYSDATETIMEOFFSET 包括了系统的时区信息。SYSDATETIME、SYSUTCDATETIME和SYSDATETIMEOFFSET可以为任意日期与时间类型赋值。SYSUTCDATETIME - 获取当前数据库系统的时间戳,并返回一个datetime 的值。数据库时间中不包含时区信息。这个值表示当前的UTC时间(Coordinated Universal Time)。This value represents the current UTC time(Coordinated Universal Time)。 这个值是从当前SQL Server 实例所运行的操作系统的时间来获得的。查看并 选中 下列代码并点击Execute:SELECT * FROM TBL_NewDatetimetypes理解存储的数据基于前面的查询结果,您应当可以理解到,SQL Server 中新的数据类型可以支持下面一些存储方式:查看并 选中 下列代码并点击Execute:USE LABDBCreate table tbl_timezones (Entryid int identity(1,1),&&&&&&&&&&&&&&&&&&&&&&&&&&&&Currenttime datetimeoffset)GOinsert into tbl_timezones (currenttime) values ('<span style="color: #ff-09-20 7:45:50.7')insert into tbl_timezones (currenttime)values ('<span style="color: #ff-01-27 6:45:50.0')insert into tbl_timezones (currenttime)values ('<span style="color: #ff-12-18 7:45:50.7')insert into tbl_timezones (currenttime)values ('<span style="color: #ff-01-20 7:12:50.7')insert into tbl_timezones (currenttime)values ('<span style="color: #ff-01-20 01:00:00.0')注意: datetimeoffset 数据类型可以允许您存储时区信息。查看并 选中 下列代码并点击Execute:select datepart(TZoffset,sysdatetimeoffset())注意: 取决于服务器的时区设置,它将会返回与GMT标准时间相差的分钟数。如PST将会是-420,而GMT+1则是60.DATEPART 函数已经被扩展为从一个已知的时区返回时区的值,TZoffset值返回一个数字,表示与GMT标准时间相差的分钟数。因此,GMT + 8) 将返回的值为480。查看并 选中 下列代码并点击Execute:select currenttime,SWITCHOFFSET ( currenttime, datepart(TZoffset,sysdatetimeoffset())) as TimeinCurrentTimezonefrom tbl_timezones)&练习 2:处理日期和时间数据类型在本练习中,您将看到以前SQL Server版本当中,datetime与smalldatetime数据类型的一些问题,然后您将会采取一些行动来解决这些问题。点击Start | All Programs | Microsoft SQL Server 2008 | SQL Management Studio& ,启动SQL Server Management Studio。在Connect to Server对话框中输入下列信息,然后点击 Connect 按钮:Server type: Database EngineServer name: (local)Authentication: Windows Authentication创建一个数据表来处理数据类型查看并 选中 下列代码并点击Execute:USE LABDBGOif object_id('tbl_historicalEvents') is not nulldrop table tbl_historicalEventscreate table tbl_historicalEvents (EventID int IDENTITY (1,1),&&&&&&&&&&&&&&&&&&Eventname nvarchar(200), Eventdate datetime)查看并 选中 下列代码并点击Execute:insert into tbl_historicalEvents (Eventname, Eventdate) values ('Birthday of Wolfgang Amadeus Mozart', '<span style="color: #ff/1756')insert into tbl_historicalEvents (Eventname, Eventdate) values ('Universal declaration of Human Rights', '<span style="color: #ff/1948')insert into tbl_historicalEvents (Eventname, Eventdate) values ('Birthday of Johan Sebastian Bach', '<span style="color: #ff/1685')注意: 最后一条语句将会出现如下错误Msg 242, Level 16, State 3, Line 17The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.注意: 发生这个错误的主要原因是,您希望插入到datetime数据类型当中的值超出了可以接受的范围 (从01-01-1753 到 )查看并 选中 下列代码并点击Execute:USE LABDBGOif object_id('tbl_historicalEvents') is not nulldrop table tbl_historicalEventscreate table tbl_historicalEvents (EventID int IDENTITY (1,1),&&&&&&&&&&&&&&&&&&Eventname nvarchar(200),&&&&&&&&&&&&&&&&&&Eventdate date) 查看并 选中 下列代码并点击Execute:insert into tbl_historicalEvents (Eventname, Eventdate) values ('Birthday of Wolfgang Amadeus Mozart', '<span style="color: #ff/1756')insert into tbl_historicalEvents (Eventname, Eventdate) values ('Universal declaration of Human Rights', '<span style="color: #ff/1948')insert into tbl_historicalEvents (Eventname, Eventdate) values ('Birthday of Johan Sebastian Bach', '<span style="color: #ff/1685')注意: 您现在将发现最后一个INSERT语句将可以正常执行,因为使用了date 数据类型。关闭所有应用程序并不要保存所有更改。关闭Virtual PC 并不要保存更改。&
大学生分期购物销量榜
已有条评论
正在努力加载文档,请稍等…sql里计算:发布信息时间距离当前时间为 几年几月几日几小时几分钟之前,该如何解决
sql里计算:发布信息时间距离当前时间为 几年几月几日几小时几分钟之前sql里计算: 发布信息时间距离当前时间为 几年几月几日几小时几分钟之前 哪位大峡帮忙 小第算法不好------解决方案--------------------------------------------------------select convert(varchar(21),getdate()-'',120)
------解决方案--------------------------------------------------------SQL code
declare @string varchar(16)
@string=convert(varchar(16),getdate()-' 08:00',120)
select substring(@string,3,2)+N' 年'+
cast(cast(substring(@string,6,2) as int)-1 as varchar(2))+ N' 月'+
cast(cast(substring(@string,9,2) as int)-1 as varchar(2))+ N' 日'+
substring(@string,12,2)+N' 小时'+
substring(@string,15,2)+N' 分钟之前'
01 年1 月4 日10 小时30 分钟之前
文章评论 以下网友留言只代表其个人观点,不代表本网站的观点和立场。

我要回帖

更多关于 sql数据库日期类型 的文章

 

随机推荐