CREATE TABLE DMS_POP_WKLY_REFRESH_20100201 NOLOGGING PARALLEL AS
SELECT wk.*,bbc.distance_km ,NVL(bbc.tactical_broadband_offer,0) tactical_broadband_offer ,
sel.tactical_select_executive_flag,
sel.agent_name,
res.DMS_RESIGN_CAMPAIGN_CODE,
pclub.tactical_select_flag
FROM spineowner.pop_wkly_refresh_20100201 wk,
dms_bb_coverage_102009 bbc,
dms_select_executive_group sel,
DMS_RESIGN_CAMPAIGN_26052009 res,
DMS_PRIORITY_CLUB pclub
WHERE wk.mpn = bbc.mpn(+)
AND wk.mpn = sel.mpn (+)
AND wk.mpn = res.mpn (+)
AND wk.mpn = pclub.mpn (+)
Run Code Online (Sandbox Code Playgroud)
vijay.sql(上面的sql脚本给出的名称)
如何在sql脚本中传递20100201的参数,我需要每次更改此日期格式.我怎么能调用这个sql脚本并通过传递date作为参数在unix中运行它.因此,应在每次运行中修改脚本中的日期
请帮我.
Vin*_*rat 19
SQL*Plus使用&1,&2 ...&n来访问参数.
假设您有以下脚本test.sql:
SET SERVEROUTPUT ON
SPOOL test.log
EXEC dbms_output.put_line('&1 &2');
SPOOL off
Run Code Online (Sandbox Code Playgroud)
你可以这样调用这个脚本,例如:
$ sqlplus login/pw @test Hello World!
Run Code Online (Sandbox Code Playgroud)
在UNIX脚本中,您通常会调用这样的SQL脚本:
sqlplus /nolog << EOF
connect user/password@db
@test.sql Hello World!
exit
EOF
Run Code Online (Sandbox Code Playgroud)
这样您的登录名/密码就不会出现在另一个会话中 ps