以下是本人在学习数据挖掘过程中写的一个抽取SQL Server数据库中时间维度表的存储过程: create procedure Sp_DateListDrawOut as create table #tempOrderDate ( Id bigint identity(1,1) not null, OrderDate datetime ) --------------------------------------------------------------------------------------- insert into #tempOrderDate(OrderDate) select distinct(OrderDate) from GoldOrder truncate table TimeDimension insert into TimeDimension([Year],[Quarter],[Month],[DayOfYear],[Day], [Week],[WeekDay],[Hour],[Minute],[Second],[MilliSecond]) select distinct year(OrderDate),DatePart(quarter,OrderDate),Month(OrderDate),DatePart(dayofyear,OrderDate), Day(OrderDate),DatePart(week,OrderDate),DatePart(weekday,OrderDate),DatePart(Hour,OrderDate), DatePart(minute,OrderDate),DatePart(second,OrderDate),DatePart(millisecond,OrderDate) from #tempOrderDate go