ایس کیو ایل سرور میں ڈلیمیٹڈ چار کے ذریعہ اسٹرنگ کو کیسے تقسیم کیا جائے؟



مسائل کو ختم کرنے کے لئے ہمارے آلے کو آزمائیں

اس مضمون میں ، ہم حد سے تکی ہوئی قیمت کو الگ کرنے کے کئی طریقوں پر تبادلہ خیال کریں گے۔ اس میں متعدد طریقوں کا استعمال کرتے ہوئے حاصل کیا جاسکتا ہے۔



  • تار کو الگ کرنے کیلئے STRING_SPLIT فنکشن کا استعمال
  • اسٹرنگ کو تقسیم کرنے کے لئے صارف کی وضاحت کردہ ٹیبل ویلیو فنکشن بنائیں ،
  • اسٹرنگ ویلیو کو تقسیم کرنے اور ایک محدود حد کو XML میں تبدیل کرنے کیلئے XQuery کا استعمال کریں

سب سے پہلے ، ہمیں ایک ٹیبل تیار کرنے اور اس میں ڈیٹا داخل کرنے کی ضرورت ہے جو تینوں طریقوں میں استعمال ہوگی۔ ٹیبل میں فیلڈ ID اور اس میں حد سے حرف والے حروف کے ساتھ تار والی ایک ہی قطار ہونی چاہئے۔ مندرجہ ذیل کوڈ کا استعمال کرتے ہوئے 'طالب علم' کے نام سے ایک ٹیبل بنائیں۔



ٹیبل طالب علم بنائیں (ID INT شناخت (1 ، 1) ، طالب علم کا نام VARCHAR (MAX))

درج ذیل کوڈ پر عمل درآمد کرتے ہوئے ایک ہی قطار میں کوما کے ذریعہ جدا ہوئے طلباء کے نام داخل کریں۔



INSERT INTO طالب علم (طالب علم کا نام) VALUES ('منروئے ، مونٹاناز ، ماروہاہاکس ، نیگلے ، البرائٹ ، گاروفوولو ، پریرا ، جانسن ، ویگنر ، کانراڈ')

ٹیبل تخلیق اور ڈیٹا شامل کرنا

تصدیق کریں کہ آیا ڈیٹا کو ٹیبل میں داخل کیا گیا ہے یا مندرجہ ذیل کوڈ کا استعمال نہیں کیا گیا ہے۔

طالب علم سے * منتخب کریں

تصدیق کریں کہ آیا 'طالب علم' ٹیبل میں ڈیٹا داخل کیا گیا ہے



طریقہ 1: تار کو الگ کرنے کیلئے STRING_SPLIT فنکشن کا استعمال کریں

SQL سرور 2016 میں ، 'STRING_SPLIT' فنکشن متعارف کرایا گیا تھا جس کو مطابقت کی سطح 130 اور اس سے اوپر کے ساتھ استعمال کیا جاسکتا ہے۔ اگر آپ 2016 کا ایس کیو ایل سرور ورژن یا اس سے زیادہ استعمال کرتے ہیں تو آپ یہ بلٹ ان فنکشن استعمال کرسکتے ہیں۔

مزید برآں 'STRING_SPLIT' اس ڈور کو داخل کرتا ہے جس نے ذیلی تاروں کو حد سے بڑھا دیا ہے اور ایک حرف کو ڈلیمیٹر یا جداکار کے بطور استعمال کرنے کیلئے ان پٹ ڈال دیتا ہے۔ فنکشن میں ایک واحد کالم ٹیبل برآمد ہوتا ہے جس کی قطار میں ذیلی تار موجود ہوتے ہیں۔ آؤٹ پٹ کالم کا نام ہے “ قدر' . اس فنکشن سے دو پیرامیٹر ملتے ہیں۔ پہلا پیرامیٹر ایک تار ہے اور دوسرا ڈلیمیٹر کردار یا جداکار جس کی بنیاد پر ہمیں تار کو الگ کرنا ہے۔ آؤٹ پٹ میں ایک واحد کالم ٹیبل موجود ہے جس میں سب اسٹورنگز موجود ہیں۔ اس آؤٹ پٹ کالم کا نام ہے 'قدر' جیسا کہ ہم نیچے کی شکل میں دیکھ سکتے ہیں۔ اس کے علاوہ ، 'STRING اسپلٹ' اگر ان پٹ سٹرنگ NULL ہے تو ٹیبل_ویویوڈ فنکشن ایک خالی ٹیبل لوٹاتا ہے۔

ڈیٹا بیس کی مطابقت کی سطح:

ہر ایکڈیٹا بیسہےمنسلککے ساتھکرنے کے لئےمطابقتسطحیہقابل بناتا ہےڈیٹا بیس کاسلوککرنے کے لئےہوہم آہنگویں کے ساتھہےخاص طور پرایس کیو ایلسرورورژنیہرنزپر

اب ہم کوما کے ذریعہ حد بندی کردہ اسٹرنگ کو اسٹرنگ کرنے کے لئے 'string_split' فنکشن کو کال کریں گے۔ لیکن مطابقت کی سطح 130 سے ​​کم تھی لہذا بعد میں غلطی اٹھائی گئی۔ 'غلط شے کا نام 'SPLIT_STRING''

خرابی اس وقت پیدا ہوتی ہے اگر ڈیٹا بیس کی مطابقت کی سطح 130 'غلط آبجیکٹ نام split_string' سے کم ہو

اس طرح ہمیں ڈیٹا بیس کی مطابقت کی سطح کو 130 یا اس سے زیادہ مقرر کرنے کی ضرورت ہے۔ لہذا ہم ڈیٹا بیس کی مطابقت کی سطح کو طے کرنے کے لئے ان اقدامات پر عمل کریں گے۔

  • سب سے پہلے مندرجہ ذیل کوڈ کا استعمال کرکے 'single_user_access_mode' کو ڈیٹا بیس بنائیں۔
ڈیٹا بیس سیٹ SINGLE_USER کو تبدیل کریں
  • دوم ، مندرجہ ذیل کوڈ کا استعمال کرکے ڈیٹا بیس کی مطابقت کی سطح کو تبدیل کریں۔
ڈیٹا بیس سیٹ کمپیٹیبلٹی_لیل = 130
  • مندرجہ ذیل کوڈ کا استعمال کرکے ڈیٹا بیس کو کثیر صارف تک رسائی کے موڈ میں واپس رکھیں۔
ڈیٹا بیس سیٹ ملٹی_امر کو تبدیل کریں
استعمال کریں [ماسٹر] اعداد و شمار میں تبدیل ہوجائیں

پیداوار ہو گی:

مطابقت کی سطح کو 130 میں تبدیل کریں

اب مطلوبہ نتیجہ حاصل کرنے کے لئے اس کوڈ کو چلائیں۔

string_value VچرAR (MAX) کو مسترد کریں؛ SET @ string_value = 'منروئے ، مونٹاناز ، ماروہاہاکس ، نیگلی ، البرائٹ ، گاروفوولو ، پریرا ، جانسن ، ویگنر ، کانراڈ' منتخب کریں _ منجانب STRING_SPLIT (@ سٹرنگ_یوئولیو ،