متعدد شرائط پر ایس کیو ایل جوائن کریں۔

Mt Dd Shrayt Pr Ays Kyw Ayl Jwayn Kry



رشتہ دار ڈیٹا بیس کی سب سے زیادہ مروجہ خصوصیات میں شامل ہونا ہے۔ ایس کیو ایل جوائنز معیاری خصوصیات یا کالموں کی بنیاد پر دو یا دو سے زیادہ جدولوں کے ڈیٹا کو ایک واحد نتیجہ سیٹ میں یکجا کرنے کے عمل کا حوالہ دیتے ہیں۔

جدولوں میں شامل ہونے سے ہمیں ایک ہی سوال میں متعدد جدولوں میں محفوظ کردہ ڈیٹا کو بازیافت کرنے کی اجازت ملتی ہے جو اسے ڈیٹا کے تجزیہ اور رپورٹنگ کے لیے ایک طاقتور ٹول بناتا ہے۔







اس ٹیوٹوریل میں، ہم دریافت کریں گے کہ متعدد شرائط پر ایس کیو ایل جوائن کو کیسے انجام دیا جائے۔ ہم متعدد شرائط پر مبنی ڈیٹا میں شامل ہونے کے لیے 'AND' اور 'OR' منطقی آپریٹرز کا استعمال کرنا سیکھیں گے۔



ایس کیو ایل متعدد شرائط پر شامل ہوتا ہے۔

ہم SQL میں AND یا OR آپریٹرز کا استعمال کرتے ہوئے متعدد شرائط کی وضاحت کر سکتے ہیں۔ یہ آپریٹرز ہمیں بولین ایکسپریشنز کے ایک سیٹ کی وضاحت کرنے کی اجازت دیتے ہیں جس کا پھر جائزہ لیا جاتا ہے اور نتیجہ آنے والے سیٹ سے موازنہ کیا جاتا ہے۔



ہم AND آپریٹر کا استعمال اس بات کو یقینی بنانے کے لیے کرتے ہیں کہ تمام مخصوص شرائط درست ہیں۔ اگر ان میں سے ایک شرط بھی درست نہ ہو تو پورا اظہار غلط قرار دیا جاتا ہے۔ یہ AND آپریٹر کو انتہائی ڈیٹا فلٹرنگ کے لیے ایک غیر معمولی ٹول بناتا ہے۔





دوسری طرف، ہم OR آپریٹر کا استعمال کرتے ہیں جب ہمیں کم از کم ایک شرط درست ہونے کی ضرورت ہوتی ہے۔ اس سے یہ ڈیٹا فلٹرنگ کا زیادہ 'ڈھیلا' طریقہ بنتا ہے کیونکہ نتیجہ میں آنے والے ریکارڈ کو صرف کم از کم ایک متعین پیرامیٹر کو پورا کرنا چاہیے۔

AND اور OR آپریٹرز کی فعالیت SQL جوائن کے معاملے میں بھی تبدیل نہیں ہوتی ہے۔



ایس کیو ایل ملٹیپل جوائنز کی مثال

متعدد شرائط پر جوائنز کے ساتھ کام کرنے کا طریقہ سمجھنے کے لیے، مثال کے ساتھ کام کرنا بہتر ہے۔

اس مظاہرے کے لیے، ہم سکیلا ڈیٹا بیس کا استعمال کرتے ہیں جو SQL کی مکمل صلاحیتوں کو تلاش کرنے کے لیے تیار کیا گیا تھا۔

فرض کریں کہ ہم فلم اور فلم_ایکٹر ٹیبلز سے ڈیٹا حاصل کرنا چاہتے ہیں۔ سب سے پہلے، ہم ان تمام اداکاروں کو تلاش کرنا چاہتے ہیں جنہوں نے فلم میں اداکاری کی جن کو یا تو PG یا PG-13 کا درجہ دیا گیا ہے اور جن کی لمبائی 90 اور 120 کے درمیان ہے۔

اس طرح کے منظر نامے میں، ہمیں متعدد شرائط کے ساتھ جوائن کرنے کی ضرورت ہے جیسا کہ درج ذیل میں دکھایا گیا ہے:

اداکار۔پہلا_نام، اداکار۔آخری_نام، فلم۔ٹائٹل، فلم۔ریلیز_سال، فلم کی درجہ بندی کو منتخب کریں
اداکار سے
فلم_ایکٹر پر ایکٹر.ایکٹر_آئی ڈی = فلم_ایکٹر.ایکٹر_آئی ڈی میں شامل ہوں۔
فلم میں شامل ہوں film_actor.film_id = film.film_id
WHERE film.length BETWEEN 90 اور 120
اور فلم کی درجہ بندی میں ( 'PG' , 'PG-13' ) ;


جیسا کہ آپ پچھلی استفسار سے دیکھ سکتے ہیں، ہم ایس کیو ایل سے کہتے ہیں کہ اداکار اور فلم_ایکٹر ٹیبلز کے درمیان اداکار_آئی ڈی کالم کی بنیاد پر جوائن کریں۔ ہم فلم_اداکار اور فلم_آئی ڈی کالم کا استعمال کرتے ہوئے فلم ٹیبلز کے درمیان جوائن بھی کرتے ہیں۔ ہم ریلیز کے سال اور فلم کی لمبائی کی بنیاد پر رزلٹ ٹیبل کو فلٹر کرنے کے لیے WHERE شق کا استعمال کرتے ہوئے دو شرائط کی وضاحت کرنا بھی یقینی بناتے ہیں۔

نتیجہ کی میز مندرجہ ذیل ہے:


ہم OR آپریٹر کی بنیاد پر متعدد شرائط بھی بیان کر سکتے ہیں جیسا کہ درج ذیل مثال کے استفسار میں دکھایا گیا ہے۔

فلم کا عنوان، فلم کا کرایہ دار، زمرہ کا نام منتخب کریں۔
فلم سے
film.film_id = film_category.film_id پر فلم_کیٹیگری میں شامل ہوں۔
film_category.category_id = category.category_id پر زمرہ میں شامل ہوں۔
WHERE category.name IN ( 'عمل' , 'کامیڈی' )
اور film.rental_rate > 3.00 ;


نتیجہ کی میز مندرجہ ذیل ہے:

نتیجہ

اس ٹیوٹوریل نے AND اور OR آپریٹرز کا استعمال کرتے ہوئے متعدد شرائط کی بنیاد پر SQL جوائن کے ساتھ کام کرنے کا طریقہ دریافت کیا۔ یہ مزید دانے دار ڈیٹا فلٹرنگ فراہم کرتا ہے۔