دستور AND & OR :
از And و Or برای ترکیب شرط ها در دستور Where استفاده می شود .
گاهی اوقات اطلاعات مورد نیاز ما در دستور Select دارای چندین شرط مختلف است . به طور مثال ما مشخصات دانشجویان ترم دوم رشته نرم افزار که معدل آنها بیش از ۱۵ است را می خواهیم . در این حالت بایستی هر یک از شرط های مسئله را به تنهایی تعریف کرده و سپس آنها را با هم ترکیب کنیم . برنامه به ارزیابی هر یک از شرط ها پرداخته ، سپس نتایج حاصله را با هم ترکیب کرده و خروجی را تعیین می کند .
عملگر And برای اجرای دستور نیاز دارد تا تمام شرط های تعیین شده برای آن درست باشد . در حالی که عمگر Or فقط نیاز دارد که حداقل یکی از شرط های آن درست باشد . در جداول زیر چگونگی برقراری نتیجه نهایی در هنگام استفاده از این دو اوپراتور را مشاهده می کنیم :
در حالت ۲ شرط :
|
|
چگونگی حالت های فوق را در مثال های زیر بررسی می کنیم :
Student Table | |||||
Student ID | Name | Family | Major | City | Grade |
۴۱۲۵۲۲۱۴ | Ahmad | Rezaee | Hard Ware | Tehran | ۱۸ |
۱۰۷۲۴۱۱۳ | Ehsan | Amiri | Soft Ware | Karaj | ۱۴ |
۱۰۲۵۴۸۶۱ | Zahra | Hosini | Hard Ware | Tehran | ۱۷ |
۲۷۳۶۵۱۸۷ | Sahar | Ahmadi | Soft Ware | Bam | ۱۶ |
۳۵۶۵۴۴۱۵ | Hesam | Razavi | Soft Ware | Tehran | ۱۹ |
مثال ۱ : مشخصات دانشجویانی را از جدول Student ارائه دهید که نمره آنها بیش از ۱۵ و رشته تحصیلی آنها نرم افزار باشد :
مثال | |||||||||||||||||||
Select * From Student Where Major = ‘Soft Ware’ AND Grade > 15 ; |
کد | ||||||||||||||||||
|
خروجی |
مثال ۲ : مشخصات دانشجویانی را از جدول Student ارائه دهید که نمره آنها بیش از ۱۷ بوده یا رشته تحصیلی آنها نرم افزار باشد :
مثال | |||||||||||||||||||
Select * From Student where Major = ‘Soft Ware’ OR Grade > 17 ; |
کد | ||||||||||||||||||
|
خروجی |
نکته مهم : همچنین می توان با استفاده از عملگر پرانتز چندین شرط مختلف را به صورت دسته های مجزا تعریف کرده و سپس همه آنها را با هم ترکیب کرد . در این حالت شرط های هر گروه ابتدا در داخل پرانتز با هم ترکیب شده ، سپس نتیجه حاصله به عنوان نتیجه نهایی آن گروه شرط به دستور Where ارسال می شود و درنهایت نتایج تمام گروه ها با هم ترکیب می شوند .
مثال مهم : از جدول Student مشخصات دانشجویانی را ارائه دهید که نمره آنها ۱۸ و رشته تحصیلی آنها سخت افزار بوده یا نمره آنها ۱۶ و رشته تحصیلی شان نرم افزار باشد :
مثال | |||||||||||||||||||
Select * From Student Where ( ( Grade = 18 AND Major = ‘Hard Ware’ ) OR ( Garde = 16 AND Major = ‘Soft Ware’ ) ) ” ; |
کد | ||||||||||||||||||
|
خروجی |