WHERE در MySQL

منتشر شده در 13 مارس 2020 آخرین به روز رسانی در 22 فوریه 2021
مهندس طهماس زاده
1854 0
where MySQL

این پست با مسیر متخصص MySQL مرتبط است. مشاهده مسیر (Roadmap)

در تمامی محیط های برنامه نویسی باید شرایطی وجود داشته باشد که تنها داده هایی از اطلاعات که مورد نظر ما هستند نمایش داده شوند. برای مثال فرض کنید می خواهیم اطلاعات اشخاصی را داشته باشیم که یک سری شرایط خاص که مد نظر ما هست را دارا باشند.در ادامه به آموزش WHERE در MySQL می پردازیم. پس تا انتها همراه ما باشید و از آموزش استفاده نمایید.

WHERE در MySQL :

در محیط MySQL برای گذاشتن شرط باید از کلمه ی WHERE استفاده کنیم.

مثال: در جدول انتخابات “ENTEKHABAT” دو ستون با نام های کد انتخابات و سال وجود دارد. مطلوب است کدهای انتخاباتی از سال 1397 به بعد را نمایش دهید.

پاسخ:

خب اول برای راحتی در فهم، ابتدا من کل جدول انتخابات را برای شما در شکل زیر نمایش می دهم تا راحت تر متوجه مطلب بشوید.

where در SQL
where در SQL

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

یادآوری: عملگرهای مقایسه ای عبارتند از >،<=،=،=>،<،=! و…

در نتیجه ما باید برای بدست آوردن جدول مطلوب برای ستون سال یک شرطی قرار دهیم که مقدار سال ها ببیشتر مساوی 1397 باشد.

کد:

SELECT  CodeEntekhabat
FROM entekhabat
WHERE year >= 1397

همانطور که می بینید در خط آخر کد شرط مورد نظر خودمان را لحاظ کردم.

خروجی WHERE در MySQL:

where در SQL
where در SQL

تمرین: کد بالا را به شکلی تغییر دهید که در خروجی دو ستون کد انتخابات و سال (به میلادی) نمایش داده شود و اما جدول تنها باید سال های 2015 به بعد را نمایش دهد.

تذکر: تمرین کردن برای تسلط بر هر زبانی لازم است پس لطفا برای مسلط شدن و یادگیری کامل تمرینات هر پست مربوط به آن را حل کنید و سپس به پست بعدی بروید.

مثال: تمام کد های انتخاباتی به جز سال 1399.

پاسخ: برای این کار لازم است از عملگر =! و یا <> استفاده کرد. شکل کد هم، همانند پاسخ مثال بالاست با این تفاوت که نوع عملگر و سال مورد انتخاب ما فرق می کند.

کد:

SELECT  CodeEntekhabat
FROM entekhabat
WHERE year <> 1399

خروجی WHERE در SQL:

where در SQL
where در SQL

در شکل بالا مشاهده می کنید که تنها کد انتخاباتی سال 1399 نمایش داده نشده است.

مثال هایی که در بالا زده شد مربوط به نوع عددی یعنی Integer بود اما اگر نوع داده ی ما رشته یا String باشه چطور؟؟

به مثال زیر توجه کنید:

مثال: جدول شعبه دارای سه ستون ShobeID ,ShobeName ,Address می باشد. مطلوب است:

الف) کد شعبه هایی که در تهران هستند.

ب) آدرس و کد شعبه هایی که در تهران نیستند.

‍‍‍‍‍ پاسخ الف:

برای راحتی ابتدا جدول شعبه را در شکل زیر آورده ام:

WHERE در MySQL

صورت سوال فقط ستون کد شعبه را از ما خواسته پس خروجی باید تنها یک ستون داشته باشد.

کد:

SELECT ShobeID
FROM shobe
WHERE ShobeName = ‘TEHRAN’

نکته: برای داده های رشته ای و یا String  باید حتما از single quotation، همانطور که در شکل بالا مشاهده می کنید استفاده کنیم.

پاسخ ب:

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

کد:

SELECT ShobeID
FROM shobe
WHERE ShobeName != ‘TEHRAN’

به پایان آموزش WHERE در MySQL رسیدیم. چنانچه ابهام و اشکال داشتید، می توانید در بخش کامنت مطرح نمایید.