資源描述:
《oracle model 入門》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、oraclemodel入門(行間計算)一、給出我的測試表和測試數(shù)據(jù)。[sql]?viewplaincopy1.CREATE?TABLE?MODEL_TEST??2.(??3.??DOMAINS??????VARCHAR2(20),??4.??NAME?????????VARCHAR2(20),??5.??YEAR?????????NUMBER,??6.??INPUTS???????NUMBER,??7.??INCREAMENTS??NUMBER??8.)??9.insert?into?MODEL_T
2、EST?(DOMAINS,?NAME,?YEAR,?INPUTS,?INCREAMENTS)??10.values?('chchina',?'apple',?2000,?100,?150);??11.insert?into?MODEL_TEST?(DOMAINS,?NAME,?YEAR,?INPUTS,?INCREAMENTS)??12.values?('chchina',?'banana',?2001,?200,?250);??13.insert?into?MODEL_TEST?(DOMAINS,
3、?NAME,?YEAR,?INPUTS,?INCREAMENTS)??14.values?('chchina',?'orange',?2002,?300,?450);??15.insert?into?MODEL_TEST?(DOMAINS,?NAME,?YEAR,?INPUTS,?INCREAMENTS)??16.values?('hongkong',?'apple',?2000,?100,?150);??17.insert?into?MODEL_TEST?(DOMAINS,?NAME,?YEAR,
4、?INPUTS,?INCREAMENTS)??18.values?('hongkng',?'banana',?2001,?200,?250);??19.insert?into?MODEL_TEST?(DOMAINS,?NAME,?YEAR,?INPUTS,?INCREAMENTS)??20.values?('hongkong',?'orange',?2002,?300,?450);??二、幾點說明1、model子句只是單純的返回一個結果集,不會對源表產(chǎn)生任何影響。2、如果想使用model自己產(chǎn)生的結
5、果集可以使用insert,update,或者mergeinto子句完善功能。三、根據(jù)表結構和需求定義分區(qū)(partitionby),維度(dimensionby),度量(measures),其中分區(qū)表名了規(guī)則適用的范圍和作用域,維度用來唯一的定定位一個單元格,度量用來真正存儲規(guī)則產(chǎn)生的結果(自己的理解)。四、根據(jù)上述表結構定義上面提到的三個要素:分區(qū):domains,維度:name和year,度量:inputs,increaments:列五、model子句的使用方法:1.預測2003年大陸地區(qū)的進貨
6、和收益。1./*?Formatted?on?2010-6-11?PM?02:20:41?(QP5?v5.114.809.3010)?*/??2.SELECT???domains,??1.?????????NAME,??2.?????????YEAR,??3.?????????inputs,??4.?????????increaments??5.??FROM???modeL_test??6.?WHERE???domains?=?'chchina'??7.MODEL?RETURN?UPDATED?ROW
7、S??8.???PARTITION?BY?(domains)??9.???DIMENSION?BY?(NAME,?YEAR)??10.???MEASURES?(inputs,?increaments)??11.???RULES??12.??????(inputs?['apple',?'2003']?=?2?*?inputs['apple',?'2000'],??13.??????increaments?['apple',?'2003']?=?2?*?increaments['apple',?'200
8、0'],??14.??????inputs?['banana',?'2003']?=?2?*?inputs['banana',?'2001'],??15.??????increaments?['banana',?'2003']?=?2?*?increaments['banana',?'2001'],??16.??????inputs?['orange',?'2003']?=?2?*?inputs['orange',?'2002'],??17.??????incream