码迷,mamicode.com
首页 > 其他好文 > 详细

分析函数之初体验(二)——环境

时间:2014-05-01 00:21:13      阅读:380      评论:0      收藏:0      [点我收藏+]

标签:com   http   blog   style   class   div   img   code   java   c   log   

    参考一本书上的讲解,实验环境使用的是oracle 11g的SH用户下的数据,在创建数据库时勾选“sample schema”,默认会创建一系列的示例用户,包括scott/hr/sh/bi等,但这些用户中除了scott外,其它用户都没有数据,这需要用官方网站下载一个examples的压缩包,把这个包安装上之后,再进行数据导入才会有相应的数据。

    安装简单,直接执行安装程序即可,麻烦的是在导入数据上,颇费一番周折。

    安装完后,在/u01/oracle/app/oracle/product/11.2.0/demo/schema/sales_history目录中可以找到相关的创建用户和示例数据文件,数据需要用sqlldr来导入。

    具体步骤如下:

    1. 先以管理员用户身份登录,执行sh_main.sql,这个脚本主要是创建用户、表、视图、索引等。

mamicode.com,码迷
SQL> @sh_main.sql

specify password for SH as parameter 1:
Enter value for 1: sh

specify default tablespace for SH as parameter 2:
Enter value for 2: users

specify temporary tablespace for SH as parameter 3:
Enter value for 3: temp

specify password for SYS as parameter 4:
Enter value for 4: memory

specify directory path for the data files as parameter 5:
Enter value for 5: /u01/oracle/app/oracle/product/11.2.0/demo/schema/sales_history

writeable directory path for the log files as parameter 6:
Enter value for 6: /u03/dmp

specify version as parameter 7:
Enter value for 7: v3
mamicode.com,码迷

注意每5步和第7步,第5步的路径指的是存放sh用户脚本的路径,第7步的版本,可以在sh脚相的目录ls一下,很多文件后面都有一个数字,就是这个版本,不是数据库版本。

    2. 导入数据,顺序不能错,因为表中有外键约束,顺序错了导不进数据。

mamicode.com,码迷
sqlldr userid=sh/sh control=prom_v3.ctl data=prom1v3.dat
sqlldr userid=sh/sh control=cust_v3.ctl data=cust1v3.dat
sqlldr userid=sh/sh control=cust2v3.ctl data=cust2v3.dat
sqlldr userid=sh/sh control=prod_v3.ctl data=prod1v3.dat
sqlldr userid=sh/sh control=prod2v3.ctl data=prod2v3.dat
sqlldr userid=sh/sh control=sale_v3.ctl data=sale1v3.dat
sqlldr userid=sh/sh control=sale2v3.ctl data=sale2v3.dat
mamicode.com,码迷

    3. 创建实验用的数据表

mamicode.com,码迷
 1 CREATE table sales_fact AS
 2 SELECT country_name country,
 3        country_subRegion region,
 4        prod_name product,
 5        calendar_year year,
 6        calendar_week_number week,
 7        SUM(amount_sold) sale,
 8        sum(amount_sold * (case
 9              when mod(rownum, 10) = 0 then
10               1.4
11              when mod(rownum, 5) = 0 then
12               0.6
13              when mod(rownum, 2) = 0 then
14               0.9
15              when mod(rownum, 2) = 1 then
16               1.2
17              else
18               1
19            end)) receipts
20   FROM sales, times, customers, countries, products
21  WHERE sales.time_id = times.time_id
22    AND sales.prod_id = products.prod_id
23    AND sales.cust_id = customers.cust_id
24    AND customers.country_id = countries.country_id
25  GROUP BY country_name,
26           country_subRegion,
27           prod_name,
28           calendar_year,
29           calendar_week_number;
mamicode.com,码迷

实验环境完成。

 

 

分析函数之初体验(二)——环境,码迷,mamicode.com

分析函数之初体验(二)——环境

标签:com   http   blog   style   class   div   img   code   java   c   log   

原文地址:http://www.cnblogs.com/B97128721/p/3701182.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!