سؤال

لدي جدول قاعدة بيانات ، دعنا نسميها رؤوسها مع معرف وحقل سلسلة يسمى "رأس". جدول آخر في قاعدة البيانات ، يسمى subheaders لديه حقلان ، headerid وحقل السلسلة "subheader". هناك 0 أو 1 أو 2 من الرؤوس الفرعية لكل رأس. أريد الآن استخدام تكامل بيانات Kettle/Pentaho لإنشاء إخراج Excel مع الأعمدة التالية:

header subheader1 subheader2

جربت ما يلي: إدخال الجدول على "الرؤوس" ، إدخال الجدول على "subheaders" لـ subheader1 ، إدخال الجدول على "subheaders" لـ subheader2. "البحث عن قاعدة البيانات" غير ممكن لأن ذلك لا يسمح لي باستبعاد subheader1 في الاستعلام عن subheader2.

مشكلتي الرئيسية هي أنه لا يمكنني الرجوع إلى حقول الدفق في بيان SQL مباشرة ولكن بدلاً من ذلك يجب أن تعتمد على ترتيب الحقول. تملأ علامة الاستفهام الأولى بحقل الدفق الأول ، وهكذا.

الاستفسارات: لجدول "الرؤوس":

SELECT id, header FROM headers

بالنسبة لجدول "subheaders" (2 خطوات إدخال الجدول في صف واحد):

SELECT subheader AS subheader1, ? AS header FROM subheaders WHERE headerId = ?
SELECT ? AS subheader1, subheader AS subheader2, ? AS header WHERE headerId = ? <- doesn't work as I don't have a reference to the header-ID anymore

أي فكرة ، كيف تحل هذه المشكلة بشكل جيد؟

شكرا على أي أفكار.

هل كانت مفيدة؟

المحلول

لقد قمت بحل هذه المشكلة باستخدام بنية انضمام في إدخال الجدول.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top