الاتحاد مع أنواع البيانات المختلفة في خادم DB2

StackOverflow https://stackoverflow.com/questions/1472196

  •  16-09-2019
  •  | 
  •  

سؤال

لقد قمت ببناء استفسار يحتوي على اتحاد، لكن جزأين منه ليس له نفس نوع البيانات. أعني، يجب أن عرض عمود واحد ولكن تنسيق الأعمدة اثنين، من حيث أحصل على البيانات لها اختلافات. لذلك، إذا حصلت على مثال:

select a,b
from c
union all
select d,b
from e

A و D هي أرقام، لكن لديهم تنسيق مختلف. وهذا يعني أن طوله هو 15 وطول B هو 13. لا توجد أرقام بعد النقطة العائمة. استخدام الأرقام، varchar، عدد صحيح وعشري لم ينجح. أحصل دائما على الرسالة: تحويل البيانات أو خطأ في رسم الخرائطوبعد كيف يمكنني تحويل هذه الحقول بنفس التنسيق؟

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

المحلول 2

لقد استخدمت الوظيفة المصبوب لتحويل نوع الأعمدة إلى نفس النوع (varchar بسعة كبيرة). لذلك استخدمت الاتحاد دون مشاكل. عندما كنت بحاجة إلى نوعها الأصلي، مرة أخرى، استخدمت نفس الوظيفة المصبوب (هذه المرة تحولت القيم إلى تعويم)، وحصلت على النتيجة التي أردت.

نصائح أخرى

ليس لدي تجربة DB2 ولكن لا يمكنك فقط إلقاء "A" & "إلى نفس النوع. هذه كبيرة بما يكفي للتعامل مع كل من التنسيقات، من الواضح.

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