دستور WHERE

دستور WHERE برای فیلتر کردن رکوردها و انتخاب فقط رکوردهایی که شرط خاصی را برآورده می‌کنند.

دستور WHERE چیست؟

WHERE برای فیلتر کردن رکوردها استفاده می‌شود. یعنی فقط رکوردهایی برگردانده می‌شوند که شرط شما را برآورده کنند.

ساختار کلی

SELECT ستون۱, ستون۲, ...
FROM نام_جدول
WHERE شرط;

عملگرهای WHERE

عملگرتوضیحمثال
=مساویWHERE age = 18
>بزرگتر ازWHERE age > 18
<کوچکتر ازWHERE age < 20
>=بزرگتر مساویWHERE age >= 18
<=کوچکتر مساویWHERE age <= 20
<> یا !=نامساویWHERE age <> 18
BETWEENبین دو مقدارWHERE age BETWEEN 18 AND 20
LIKEالگوی متنیWHERE name LIKE 'ع%'
INدر لیست مقادیرWHERE city IN ('تهران', 'مشهد')

مثال‌های WHERE

۱. فیلتر عددی

SELECT * FROM students WHERE age > 19;

۲. فیلتر متنی

SELECT * FROM students WHERE city = 'تهران';
متن‌ها باید داخل تک‌کوتیشن '...' قرار بگیرند، اما اعداد نیازی به کوتیشن ندارند.

۳. فیلتر با نامساوی

SELECT * FROM students WHERE grade <> 'A';

WHERE با UPDATE و DELETE

دستور WHERE فقط برای SELECT نیست! در UPDATE و DELETE هم استفاده می‌شود:

-- به‌روزرسانی رکوردهای خاص
UPDATE students SET grade = 'A' WHERE city = 'تهران';

-- حذف رکوردهای خاص
DELETE FROM students WHERE age < 18;
هشدار: اگر در DELETE یا UPDATE از WHERE استفاده نکنید، همه رکوردها تغییر می‌کنند! همیشه قبل از اجرا، شرط خود را بررسی کنید.

ترتیب اجرای clauses

ترتیب نوشتن در SQL:

SELECT → FROM → WHERE → ORDER BY

اما ترتیب اجرا در پایگاه داده:

FROM → WHERE → SELECT → ORDER BY

این مبحث بخشی از دوره آموزش کامل SQL است.

ابزارهای مرتبط