تبدیل رشته کاما به رکورد

روز گذشته یک پست در خصوص آرایه رشته در تویتر دیدم که خودم هم در ادامه سوال کردم و krisrise از اوراکل به اون هم پاسخ داد و خواستم که با دوستان به اشتراک بگذارم.

همانطور که میدانید روش های مختلفی برای جداسازی رشته بهمراه کاما وجود دارد، ولی یک روش بسیار ساده و راحت در خصوص جداسازی هر خانه آرایه یک رشته با کاما وجود دارد که این روش را با مثال توضیح می دهم. بصورت کلی ما دونوع تایپ کاراکتر و عددی در رشته های بهمراه کاما استفاده می کنیم.

مثال عددی:

‘1656,2555,3,4,5’

مثال کارکتری:

‘saeed,سعید,تست,گچپز,456’

Number Sample:

select to_number(column_value) as id
from xmltable(‘1656,2555,3,4,5’)

Result:

1656
2555
3
4
5

Character Sample:

نکته: در خصوص کارکتر باید بین Double Quotes “”  هر سلول آرایه را قرار دهید.

select *
from xmltable(‘”saeed”,”سعید”,”تست”,”گچپز”,”456″‘)

Result:

saeed
سعید
تست
گچپز
456

امیدوار هستم که مطلب مفید واقع شده باشد.

5/5 - (2 امتیاز)

5 دیدگاه. پیغام بگذارید

  • میشه به جای اون استرینگ ثابت خروجی یه کویری رو بهش داد؟
    مثلا:
    select *
    from xmltable(‘select id from test2’)

    پاسخ
    • سعید حسن پور
      تیر 18, 1398 11:52 ق.ظ

      خیر. ولی می توانید از فانکشن استفاده کنید.
      select to_number(column_value) as id
      from xmltable(get_str())

      پاسخ
  • هوشمند راستین
    تیر 18, 1398 10:37 ق.ظ

    مطلب خوبی بود. لطفا از این مطالب در سایت بیشتر بگذارید
    ممنون و سپاس

    پاسخ
    • سعید حسن پور
      تیر 18, 1398 6:35 ب.ظ

      با تشکر از نظر شما. قطعا به همین صورت خواهد بود و در این چند ساله اخیر سعی بر انتقال مطالب در زمینه های مختلف اوراکل بوده.

      پاسخ
  • پریسا هارونی
    تیر 31, 1398 6:55 ب.ظ

    مطلب مفیدی بود ممنون

    پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این قسمت نباید خالی باشد
این قسمت نباید خالی باشد
لطفاً یک نشانی ایمیل معتبر بنویسید.

keyboard_arrow_up
Oracle APEX Capabilities (OAC)