SAS: Хотите знать, как передавать данные из таблицы WORK.WHATEVER в таблицу Netezza - PullRequest
0 голосов
/ 23 октября 2018

Использование SAS V 9.xxx.

Как передать данные из таблицы в общей библиотеке WORK в таблицу в Netezza.

Прямо сейчас я могу взять данные из Netezza и сохранить их в библиотеке WORK, например:

/* using “connect to” */

proc sql;
connect to netezza (&us_mkt.);  
execute (

drop table &tempdir..SALES_TBL_TST1; 

create table &tempdir..SALES_TBL_TST1
as
   select * from &tempdir..SALES_TBL;
   /*select * from &tempdir..SALES_TBL */

) by netezza;
    disconnect from netezza;
quit;

/* using “connect using” */

proc sql;

   connect using ROLAP;

   drop table WORK.SALES_TBL_TST2;

     create table WORK.SALES_TBL_TST2 AS
   select * from connection to ROLAP
      (select * from USER_ROLAP.SALES_TBL);

   insert into WORK.SALES_TBL_TST2
   select * from connection to ROLAP
      (select * from &tempdir..SALES_TBL);

quit;

Но что если я захочу вернуть данные в Netezza из библиотеки WORK?Например:

  insert into &tempdir..SALES_TBL_TST1   
select * from WORK.SALES_TBL_TST2;

Есть ли способ сделать это?

Заранее спасибо!

1 Ответ

0 голосов
/ 23 октября 2018

вы можете сделать перемещение данных с помощью имени libment.Нужна массовая загрузка (загружает данные большими объемами и быстрее) для быстрой передачи записей.После того, как имена файлов определены.данные могут быть перемещены с работы в Netezza с помощью proc sql, datastep или proc append.Код перемещения данных аналогичен перемещению данных между двумя библиотеками SAS (с синтаксисом).

Ниже приведен код, скопированный из http://support.sas.com/documentation/cdl/en/acreldb/63647/HTML/default/viewer.htm#a003181092.htm

 libname sasflt 'SAS-data-library';


 libname net_air netezza user=louis pwd=fromage
    server=air2 database=flights;

Пример: Proc sql

 proc sql;
create table net_air.flights98
   (bulkload=YES bl_options='logdir "c:\temp\netlogs"') 
    as select * from sasflt.flt98;
quit;
...