SQL میں شق ہونا

Sql My Shq Wna



اس ٹیوٹوریل کا مقصد SQL بیانات میں HAVING شق کو سمجھنے اور استعمال کرنے میں آپ کی مدد کرنا ہے۔

آئیے اندر غوطہ لگاتے ہیں۔







ایس کیو ایل کی شق ہے۔

SQL میں HAVING شق آپ کو SQL GROUP BY شق میں بیان کردہ گروپس میں شرط سیٹ کرنے کی اجازت دیتی ہے۔



آپ SQL میں مختلف پارٹیشنز میں ڈیٹا کو منظم کرنے کے لیے GROUP BY شق استعمال کر سکتے ہیں۔ آپ گروپس پر متعدد اعمال انجام دے سکتے ہیں، جیسے کہ مجموعی افعال۔



HAVING شق کا استعمال کرتے ہوئے، آپ گروپوں کے لیے ایک شرط بتا سکتے ہیں۔ تاہم، آپ GROUP BY جوڑی کے بغیر HAVING شق استعمال کر سکتے ہیں۔ ایسی صورت میں، HAVING شق WHERE شق کی طرح برتاؤ کرے گی جو آپ کو مماثل ریکارڈز تلاش کرنے کی اجازت دیتی ہے۔





درج ذیل کوڈ کا ٹکڑا SQL HAVING شق کے لیے نحو کی وضاحت کرتا ہے:

کالز کو منتخب کریں۔
ٹیبل_نام سے
GROUP BY گروپ_بائی_کلاز
گروپ_کی حالت؛



مثال 1: فلم ٹیبل کے ساتھ HAVING Clause کا استعمال

SQL میں HAVING شق کو کس طرح استعمال کیا جائے اس کو بہتر طور پر سمجھنے کے لیے، ہم MySQL کی طرف سے فراہم کردہ نمونہ ڈیٹا بیس کا استعمال کریں گے۔

مزید معلومات کے لیے آپ درج ذیل فراہم کردہ وسائل کو دیکھ سکتے ہیں۔

اس مثال کے لیے، ہم سکیلا ڈیٹا بیس سے فلم ٹیبل استعمال کریں گے جو دیے گئے لنک میں دیا گیا ہے۔

ہم مندرجہ ذیل استفسار کے مطابق HAVING شق کا استعمال کرتے ہوئے 2.99 اور اس سے اوپر کی رینٹل ریٹنگ کے ساتھ فلمیں تلاش کر سکتے ہیں:

منتخب کریں عنوان، ریلیز_سال، درجہ بندی، رینٹل_ریٹ
فلم سے
درجہ بندی کے لحاظ سے گروپ
رینٹل_ریٹ ہونا > = 2.99 ;


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


اس صورت میں، استفسار 4 مماثل ریکارڈ تلاش کرتا ہے جیسا کہ پچھلے جدول میں دکھایا گیا ہے۔

مثال 2: ایک مجموعی فنکشن کے ساتھ HAVING Clause کا استعمال

ہم sum() فنکشن کو بھی استعمال کر سکتے ہیں تاکہ فلم کی ریٹنگز کے مجموعے کے ساتھ rental_rate کی مخصوص رینج کے ساتھ فلم کا تعین کیا جا سکے۔

منتخب کریں عنوان، ریلیز_سال، درجہ بندی، رینٹل_ریٹ، رقم ( رینٹل_ریٹ )
فلم سے
درجہ بندی کے لحاظ سے گروپ
ہونا رقم ( رینٹل_ریٹ ) کے درمیان 500 اور 600 ;


اس صورت میں، استفسار کو ٹیبل کو اس طرح واپس کرنا چاہیے: