دستور 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 است.