عملگرهای AND، OR و NOT

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

عملگرهای منطقی چیست؟

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

عملگرتوضیحمثال
ANDهر دو شرط باید درست باشندشرط۱ AND شرط۲
ORکافی است یکی از شرط‌ها درست باشدشرط۱ OR شرط۲
NOTبرعکس شرط (نفی)NOT شرط

عملگر AND

با AND می‌توانید چند شرط را با هم ترکیب کنید. همه شرط‌ها باید درست باشند:

SELECT * FROM students
WHERE city = 'تهران' AND age > 18;

این کوئری فقط دانش‌آموزانی را برمی‌گرداند که هم اهل تهران باشند هم سنشان بیشتر از ۱۸ باشد.

عملگر OR

با OR کافی است یکی از شرط‌ها درست باشد:

SELECT * FROM students
WHERE city = 'تهران' OR city = 'مشهد';

این کوئری دانش‌آموزانی را برمی‌گرداند که اهل تهران یا مشهد باشند.

عملگر NOT

با NOT می‌توانید برعکس یک شرط را اعمال کنید:

SELECT * FROM students
WHERE NOT city = 'تهران';

این کوئری دانش‌آموزانی را برمی‌گرداند که اهل تهران نباشند.

ترکیب AND و OR

می‌توانید این عملگرها را با هم ترکیب کنید. پرانتز برای اولویت‌بندی مهم است:

SELECT * FROM students
WHERE (city = 'تهران' OR city = 'اصفهان')
AND age > 18;

این کوئری: دانش‌آموزانی که اهل تهران یا اصفهان باشند و سنشان بیشتر از ۱۸ باشد.

نکته اولویت: عملگر AND اولویت بیشتری از OR دارد. برای اطمینان، همیشه از پرانتز استفاده کنید.

جدول درستی (Truth Table)

شرط Aشرط BA AND BA OR BNOT A
✓ درست✓ درست✓ درست✓ درست✗ غلط
✓ درست✗ غلط✗ غلط✓ درست✗ غلط
✗ غلط✓ درست✗ غلط✓ درست✓ درست
✗ غلط✗ غلط✗ غلط✗ غلط✓ درست

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

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