SQL OR Operator

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

🟢 ساختار کلی

SELECT column1, column2, ... FROM table_name WHERE condition1 OR condition2 [OR condition3 ...];
  • اگر هرکدام از شرط‌ها True باشد، ردیف انتخاب می‌شود.

🟡 مثال‌های متداول

1️⃣ ساده‌ترین حالت

SELECT * FROM users WHERE city = 'Tehran' OR city = 'Shiraz';

کاربرانی که در تهران یا شیراز زندگی می‌کنند.

2️⃣ ترکیب با AND

SELECT name, age FROM employees WHERE (department = 'IT' OR department = 'HR') AND age < 30;

کارمندانی که در واحد IT یا HR هستند و سن کمتر از ۳۰ دارند.

پرانتز بسیار مهم است چون AND اولویت بالاتری از OR دارد.

3️⃣ چند شرط OR

SELECT * FROM products WHERE category = 'Electronics' OR category = 'Books' OR category = 'Clothing';

محصولاتی که دسته آن‌ها Electronics، Books یا Clothing است.

4️⃣ جایگزین جمع‌وجور با IN

SELECT * FROM products WHERE category IN ('Electronics','Books','Clothing');

همان نتیجهٔ مثال بالا، ولی مختصرتر.

5️⃣ همراه با LIKE

SELECT * FROM customers WHERE name LIKE 'A%' OR name LIKE 'B%';

مشتریانی که نام‌شان با A یا B شروع می‌شود.

🟠 نکات مهم

  • OR اولویت پایین‌تری نسبت به AND دارد، پس برای ترکیب‌های پیچیده از پرانتز استفاده کنید.

  • اگر می‌خواهید هر دو شرط اختیاری ولی نه همزمان باشد، OR مناسب است.

  • برای لیست‌های طولانی از IN خواناتر است.

✅ جمع‌بندی

  • OR یعنی کافی است یکی از شرط‌ها درست باشد تا ردیف انتخاب شود.

  • برای فیلترهای چند گزینه‌ای و شرط‌های جایگزین از OR استفاده کنید.

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