sql中获得部分时间的方法
很多时候,我们可能希望按月、按天、按年做一些数据统计,但是,我们实际保存的数据可能是一个很精确的发生时间,可能是到秒。如何根据一个时间之截取其中的一部分就成了问题。
有两个解决方法:
最直接的想法利用DatePart或者Year、Month、Day函数
CAST(
(
STR( YEAR( GETDATE() ) ) + '/' +
STR( MONTH( GETDATE() ) ) + '/' +
STR( DAY( GETDATE() ) )
)
AS DATETIME
)
如果只要年和月,就省掉前面的。
方法二,利用时间计算函数
例如获得月
DateAdd(month, DateDiff(month, 0, Coltime), 0)
原理就是数据库时间值Coltime减掉1900-1-1获得这期间的月份个数,然后再重新加回1900-1-1。
相关文档:
系统环境:Windows 7
软件环境:Visual C++ 2008 SP1 +SQL Server 2005
本次目的:编写一个航空管理系统
这是数据库课程设计的成果,虽然成绩不佳,但是作为我用VC++ 以来编写的最大程序还是传到网上,以供参考。用VC++ 做数据库设计并不容易,但也不是不可能。以下是我的程序界面,后面 ......
ORACLE和SQL语法区别归纳
数据类型比较
类型名称
Oracle
SQLServer
比较
字符数据类型 CHAR CHAR 都是固定长度字符资料但oracle里面最大度为2kb,SQLServer里面最大长度为8kb
变长字符数据类型 VARCHAR2 VARCHAR Oracle里面最大长度为4kb,SQLServer里面最大长度为8kb
根据字符集而定的固定长度字符串 NCHAR NCHA ......
错误如下:
Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.
Note: you can set the client character set through the NLS_LANG environment variable or the NLS_LANG registry key in
HKEY_LOCAL_MACHINE\SOFTWARE\ ......
数据压缩(Data Compression)是SQL Server 2008引入的新特性之一,这项技术使数据更有效的保存并且极大减少了存储开销,同时也带来了性能上的显著提高,尤其是对需要大量磁盘I/O的数据仓库。
注:其实在SQL Server 2005 SP2版本中,已经引入了 vardecimal ,它使用变长的格式存储定长的decimal和numberic数据。
......