ActiveWareHouse-ETL로 필드를 어떻게 제거합니까?
-
13-09-2019 - |
문제
CSV 파일을 구문 분석하고 원래 CSV 파일보다 필드가 적은 테이블로 보내려고합니다. 여분의 필드를 아무것도 설정하지 않으면 남은 외부 쉼표를 어떻게 제거합니까?
원래 CSV 형식은 다음과 같습니다.
columns => id,first_name,last_name,phone,fax
sample row => 1,ben,tomas,5555555,6666666
마지막 형식은 다음과 같습니다.
column => id,phone,fax
sample row => 1,5555555,6666666
성과성에 대한 누락 된 쉼표를 주목하십시오.
잠정 행 프로세서는 다음과 같습니다.
module ETL
module Processor
class PhoneProcessor < ETL::Processor::RowProcessor
def process(row)
#debugger
row = {:id => row[:id],
:phone => row[:phone],
:fax => row[:fax]}
row
end
end
end
end
해결책
보석의 메일 링리스트에 이메일을 보내고 몇 주를 기다린 후 보석이 죽었거나 사용하지 않은 방식으로 사용한다고 결론을 내 렸습니다. 약한 대답이지만 그게 전부입니다.
PS는 ActiveRecord 모델을 만들고 거기에서 이동하기로 결정했습니다.
제휴하지 않습니다 StackOverflow