خوش آموز اولین و تنها سایت آموزشی %100 رایگان ایران با بیش از هزاران مقالۀ آموزشی

13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

کد مطلب : 357 PDF

در آموزش قبلی با دستور WHERE و کاربرد آن در محدود کردن اطلاعات یک دستور SELECT آشنا شدیم. در این آموزش موضوع ما همان دستور WHERE می باشد. می خواهیم با استفاده از دو عملگر AND و OR قدرت مانور بیشتری به دستور WHERE بدهیم. در ادامه بصورت کاربردی با این موضوع آشنا خواهید شد.

استفاده از عملگر AND


عملگر AND معنای (و) میدهد. هر گاه که بخواهیم چند شرط مختلف را با هم ترکیب کنیم تا مجموع این شرطها ما را در محدود سازی داده ها کمک کنند از این عملگر می توانیم استفاده نماییم. برای تمرین آموزشهای این درس ابتدا لازم است تا چندین رکورد جدید به جدول PhoneBook اضافه کنیم. ما این رکوردها را قبلا اضافه کرده ایم و در نهایت داده های موجود در جدول PhoneBook به شکل تصویر زیر می باشد. شما هم داده هایتان را به همین شکل اضافه کنید.

13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

حالا یک Query جدید باز کنید و دستور زیر را در آن بنویسید و اجرا کنید :


SELECT * FROM PhoneBook
WHERE FirstName LIKE N'امیر'
AND LastName LIKE N'اکبری'


13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

در این دستور ما به اس کیوال گفتیم تا رکوردهایی را به ما نشان بدهد که فیلد "نام" آن برابر با "امیر" باشد و همینطور فیلد "نام خانوادگی" آن برابر با "اکبری" باشد. همانطور که مشاهده می کنید دستور AND به ما کمک کرد تا داده ها را با شرطهای بیشتری محدود کنیم.

ما در اینجا از یک AND و دو شرط استفاده کرده ایم. اما شما محدود به این نیستید و می توانید از AND های بیشتری هم در کنار یکدیگر استفاده کرده و شرطها را با هم ترکیب کنید.

استفاده از پرانترها برای خواناتر کردن شرطها


دستوری که در مثال بالا نوشتیم را اینبار با استفاده از پرانتزها مجدد می نویسیم. به نگارش آن دقت فرمایید. و بعد از نوشتن آن اجرایش کنید.


SELECT * FROM PhoneBook
WHERE (FirstName LIKE N'امیر')
AND (LastName LIKE N'اکبری')


13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

همانطور که خودتان هم می بینید، خروجی دستور تفاوتی نکرد. استفاده از پرانتزها باعث می شود تا در درجه اول شرطها خواناتر شوند. از آن گذشته می توان با استفاده از پرانتزها مجموعه ای از شرطها را در کنار هم داشت. این ویژگی دوم در دستورات پیچیده تر و بزرگتر بسیار حائز اهمیت می باشد. بعد از این سعی کنید همیشه با استفاده از پرانتزها شرطها را به شکل بالا بنویسید.

استفاده از عملگر OR


عملگر OR معنای (یا) می دهد. هر وقت که بخواهیم از دو شرط ما هر کدامش صحیح بود، اعمال شود، می توانیم از این عملگر استفاده نماییم. دستور زیر را بنویسید و اجرا کنید.


SELECT * FROM PhoneBook
WHERE (FirstName LIKE N'امیر')
OR (LastName LIKE N'اکبری')


13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

در این دستور ما از اس کیو ال سرور خواستیم تا کلیه رکوردهایی را به ما نشان بدهد که مقدار فیلد "نام" آن "امیر" باشد و یا اینکه مقدار فیلد "نام خانوادگی" آن "اکبری" باشد. چون از عملگر OR استفاده کرده ایم، اس کیو ال سرور مانند عملگر AND شرطها را با هم ترکیب نمیکند و در واقع هر کدام از این شرطها را جداگانه ملاک قرار داده و نتایج آنها را با هم ترکیب می کند تا خروجی را برای ما بسازد.

استفاده ترکیبی از عملگرهای AND و OR


گاهی پیش می آید که لازم می شود تا از عملگرهای AND و OR با هم استفاده کنیم. در این گونه مواقع پرانتزها در تفکیک شرطها و همینطور نحوه اعمال شرطها بسیار حائز اهمیت هستند. دستور زیر را بنویسید و اجرا کنید.


SELECT * FROM PhoneBook
WHERE ((FirstName LIKE N'امیر')
AND (LastName LIKE N'اکبری'))
OR
((FirstName LIKE N'محمد')
AND (LastName LIKE N'اکبری'))


13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

در این دستور ما دو شرط مختلف با عملگر AND نوشتیم و هر جفت از این شرطها را با یک جفت پرانتز اضافی محصور کردیم. سپس هر دوی این پرانتزهای اضافی را با عملگر OR جدا کردیم. در اینگونه مواقع اگر از پرانتزها به درستی استفاده نکنید، اس کیو ال سرور در تحلیل دستور شما به مشکل می خورد و طبیعتا خروجی دستور شما، چیزی نمی شود که در نظر داشته اید.

به تصویر زیر دقت کنید، ما کمی پرانتزهای اضافی را جابجا کرده ایم ولی در حالت کلی همان دستور بالا را نوشته ایم.

13. آموزش SQL Server به زبان ساده. استفاده از عملگرهای AND و OR

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


آموزش قبلی : 12. آموزش SQL Server به زبان ساده. محدود کردن داده ها با دستور WHERE

آموزش بعدی : 14. آموزش SQL Server به زبان ساده. استفاده از عملگر BETWEEN



نویسنده : امیر انصاری

دیدگاه ها(0)

دیدگاه خود را ثبت کنید:


آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی

آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی