易截截图软件、单文件、免安装、纯绿色、仅160KB

用SQL存储过程实现批量插入数据

修改内容:删除原来的TIME维度,新建TIME维度,修改SALES立方。
数据插入:
            1,事实数据插入:通过DTS加调度实现将sales_fact_1997的数据进行复制。频率为每分钟10000条。                           
                 主要用到的SQL语句:select top 10000 * from sales_fact_1997  
            2,维度数据插入:通过SQL语句插入数据到time_by_day. 测试用到的SQL语句:
1,单条插入
INSERT INTO time_by_day
 
(time_id, the_date, the_year, month_of_year, quarter,day_of_month)
VALUES ('1101', '1999-10-1', '1999', '10', 'Q4','1')
2,单条插入:
INSERT INTO time_by_day
      (time_id, the_date, the_year, month_of_year, quarter, day_of_month)
SELECT TOP 1 time_id + 1 AS time_id, the_date + 1 AS the_date, YEAR(the_date + 1)
      AS the_year, MONTH(the_date + 1) AS month_of_year, { fn QUARTER(the_date + 1)
      } AS quarter, DAY(the_date + 1) AS day_of_month
from time_by_day
ORDER BY time_id DESC
3,循环插入:
DECLARE @MyCounter INT
SET @MyCounter = 0            /*设置变量*/
WHILE (@MyCounter < 2)     /*设置循环次数*/
BEGIN
WAITFOR DELAY '000:00:10'   /*延迟时间10秒*/
INSERT INTO time_by_day
      (time_id, the_date, the_year, month_of_year, quarter, day_of_month)
SELECT TOP 1 time_id + 1 AS time_id, the_date + 1 AS the_date, YEAR(the_date + 1)
      AS the_year, MONTH(the_date + 1) AS month_of_year, { fn QUARTER(the_date + 1)
      } AS quarter, DAY(the_date + 1) AS day_of_month
from time_by_day


相关文档:

SQL SERVER 视图操作数据库

视图操作
视图是从一个或者多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。与真实的表一样,视图也包括几个被定义的数据列和多个数据行,但这些数据实际上是被其引用的其他表中的数据。因此,视图不是真实存在的基础表,而是一个虚拟的表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存 ......

Sql语句学习笔记(7) 常用日期函数

/*****************************
常用日期函数
*****************************/
use studentInfo
--向数据库中插入日期的常见格式:如插入2010年10月3日这个日期
--其中tb_date为一个测试用的表,里面就一个字段time,为datetime类型
insert tb_date values('2010.10.3')
insert tb_date values('2010-10-3 12:14:35 ......

sql 中 case when 语法(转)


sql
中 case when 语法
sql语言中有没有类似C语言中的switch case的语句??
 
没有,用case   when   来代替就行了.   
       
  例如,下面的语句显示中文年月  
   
 
select   getdate()   as &n ......

总结SQLite不支持的SQL语法有哪些


1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
 
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
 
其中limit 0,10表示从第0 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号