2013-07-24 23 views
0

由于我是新来的SQL Server中,我一直在努力实现以下的事情:在SQL Server Management从DateTime类型解析出日期工作室

我有什么

我有一个Sale表作为如下:

CREATE TABLE [dbo].[Sale](
[SaleID] [int] IDENTITY(1,1) NOT NULL, 
[ModelID] [int] NOT NULL, 
[CustomerID] [int] NOT NULL, 
[SaleTimeStamp] [datetime] NULL, 
[IsPresent] [bit] NULL 
) ON [PRIMARY] 

其中SaleTimeStamp条目如下:2013-06-04 12:14:32.260

我想要什么:

我需要创建具有以下属性表:

Date 
Month 
Year 
Quarter 

哪里我所有列从SaleSaleTimeStamp派生,四分之一是基于Month(first/second/thrird ...)的值。我想为此功能创建一个存储过程。我已经通过Filter datetime column in MS SQL 2008 server with a parsed string value。但仍然无法弄清楚。我不知道如何继续。

任何帮助,将不胜感激。谢谢!!

回答

3

要得到的日期,你可以值只投给DATE数据类型:

SELECT SaleTimeStamp,CAST(SaleTimeStamp AS DATE) [Date] FROM dbo.Sale; 

来获得日期部分,你可以使用DATEPART功能。 (See DATEPART on msdn.

SELECT SaleTimeStamp, 
DATEPART(MONTH, SaleTimeStamp) AS [Month], 
DATEPART(QUARTER, SaleTimeStamp) AS [Quarter], 
DATEPART(YEAR, SaleTimeStamp) AS [Year] 
FROM dbo.Sale; 
+0

工作就像一个charm..Thanks!.. –

+0

你应该考虑接受的答案,如果这有助于你。 – steoleary

相关问题