ปัญหา
มีข้อมูลฟันหลออยู่หลายๆบรรทัด ยุบรวมให้เป็น record เดียวตาม key ที่กำหนด
ตัวอย่างข้อมูล
key,aaa,bbb
111,a11,null
111,null,b11
222,a22,null
222,null,b22
ตัวอย่างผลลัพธ์ที่ต้องการ
key,aaa,bbb
111,a11,b11
222,a22,b22
วิธีทำ
1. filter แยกเป็น 2 ส่วน ส่วนแรกเลือกเอาที่ aaa มีค่า ส่วนที่ 2 เลือกเอาที่ bbb มีค่า
2. ตัดข้อมูลส่วนแรกให้เหลือ 2 column คือ key และ aaa พร้อมเปลี่ยนชื่อ column ผ่าน copy stage
จากรูปจะเห็นว่า เราไม่เอา column bbb ไปด้วย
3. ตัดข้อมูลส่วนที่สองให้เหลือ 2 column คือ key และ bbb พร้อมเปลี่ยนชื่อ column ผ่าน copy stage
จากรูปจะเห็นว่า เราไม่เอา column aaa ไปด้วย
4. เอาส่วนแรกเป็น master และส่วนที่สองเป็น update รวมข้อมูลกันผ่าน merge stage โดยใช้ column key เป็น key
ข้อจำกัด
ข้อมูลต้องเป็น pattern ว่า ในบรรทัดหนึ่งต้องมีค่าเพียง column เดียวเท่านั้น นอกนั้นต้องเป็น null
DataStage Release: 7.5.x
Job Type: Parallel
OS: Unix
No comments:
Post a Comment