آموزش رایگان صفر تا صد اسکیوال (SQL) به زبان ساده
-
آشنایی با SQL
-
آشنایی با دستورات SQL
-
دستور SELECT در SQL
-
دستور SQL SELECT DISTINCT
-
فیلتر کردن دادهها با WHERE در SQL
-
دستور ORDER BY در SQL
-
عملگر AND در SQL چیست؟
-
اپراتور OR در SQL
-
اپراتور NOT در SQL
-
دستور INSERT INTO در SQL
-
مقدار NULL در SQL
-
دستور UPDATE در SQL – بهروزرسانی اطلاعات جدول
-
دستور DELETE در SQL
-
مفهوم TOP، LIMIT، FETCH FIRST یا ROWNUM در SQL
-
توابع تجمیعی در SQL
-
معرفی توابع ()MIN و ()MAX در SQL
-
تابع COUNT() در SQL
-
تابع SUM() در SQL
-
تابع ()AVG در SQL
-
عملگر LIKE در SQL
-
استفاده از Wildcards در SQL
-
دستور IN در SQL
-
دستور BETWEEN در SQL
-
آشنایی با Aliases در SQL
-
مفهوم SQL JOIN
-
مفهوم INNER JOIN در SQL
دستور BETWEEN در SQL
دستور BETWEEN در SQL برای انتخاب مقدارهایی که در یک بازه خاص قرار دارند، استفاده میشود. این مقادیر میتوانند عدد، متن یا تاریخ باشند.
💡 نکته:
این دستور شامل مقادیر ابتدا و انتها نیز میشود. یعنی اگر بگوییم BETWEEN 10 AND 20، مقدارهای 10 و 20 هم در نتیجه جستجو قرار میگیرند.
🛒 مثال: انتخاب محصولات بر اساس قیمت
میخواهیم محصولاتی را که قیمت آنها بین 10 تا 20 است، انتخاب کنیم:
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;
📌 توضیح: این کوئری تمام محصولاتی را نمایش میدهد که قیمت آنها 10 تا 20 است.
📌 ساختار کلی BETWEEN
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
در کد بالا
🔹 column_name(s): نام ستونهای مورد نظر
🔹 table_name: نام جدول
🔹 value1 و value2: مقادیر حداقل و حداکثر بازه
📋 نمونه جدول Products
جدول زیر شامل برخی از محصولات ما است:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
موضوع بعدی
❌ NOT BETWEEN: انتخاب مقادیر خارج از بازه
اگر بخواهیم محصولاتی را که قیمت آنها خارج از بازه 10 تا 20 است نمایش دهیم، باید از NOT BETWEEN استفاده کنیم:
SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;
🔹 این کوئری محصولاتی را نشان میدهد که قیمتشان کمتر از 10 یا بیشتر از 20 است.
🎯 BETWEEN همراه با IN
میتوانیم BETWEEN را با IN ترکیب کنیم. مثلا بخواهیم محصولاتی را نمایش دهیم که:
✅ قیمت آنها بین 10 تا 20 باشد.
✅ و CategoryID آنها 1، 2 یا 3 باشد.
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
AND CategoryID IN (1,2,3);
🔡 استفاده از BETWEEN برای متن (Text)
BETWEEN را میتوان برای انتخاب محدودهای از نامهای متنی هم استفاده کرد.
مثلاً کوئری زیر محصولاتی را نمایش میدهد که نام آنها از “Carnarvon Tigers” تا “Mozzarella di Giovanni” باشد:
SELECT * FROM Products
WHERE ProductName BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni'
ORDER BY ProductName;
🔹 نتیجه: نامهایی که به ترتیب الفبایی بین این دو مقدار قرار دارند، انتخاب خواهند شد.
❌ NOT BETWEEN برای متون
اگر بخواهیم محصولاتی را انتخاب کنیم که نام آنها خارج از بازه متنی مشخصی باشد، از NOT BETWEEN استفاده میکنیم:
SELECT * FROM Products
WHERE ProductName NOT BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni'
ORDER BY ProductName;
🔹 این کوئری فقط محصولاتی را نمایش میدهد که نام آنها قبل از “Carnarvon Tigers” یا بعد از “Mozzarella di Giovanni” باشد.
📅 استفاده از BETWEEN برای تاریخها
میتوانیم بین دو تاریخ خاص، رکوردهایی را انتخاب کنیم. مثلا اگر بخواهیم تمام سفارشاتی که بین 1 جولای 1996 تا 31 جولای 1996 ثبت شدهاند را نمایش دهیم:
SELECT * FROM Orders
WHERE OrderDate BETWEEN '1996-07-01' AND '1996-07-31';
یا در برخی سیستمها که نیاز به علامت # دارند:
SELECT * FROM Orders
WHERE OrderDate BETWEEN #07/01/1996# AND #07/31/1996#;
📋 نمونه جدول Orders
جدول زیر شامل برخی از سفارشات ثبتشده است:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10248 | 90 | 5 | 7/4/1996 | 3 |
10249 | 81 | 6 | 7/5/1996 | 1 |
10250 | 34 | 4 | 7/8/1996 | 2 |
10251 | 84 | 3 | 7/9/1996 | 1 |
10252 | 76 | 4 | 7/10/1996 | 2 |
✅ جمعبندی
🔹 BETWEEN برای انتخاب مقدارهایی که در یک بازه خاص قرار دارند، استفاده میشود.
🔹 BETWEEN شامل ابتدا و انتهای بازه هم میشود.
🔹 میتوان از آن برای اعداد، متنها و تاریخها استفاده کرد.
🔹 میتوان آن را با IN ترکیب کرد.
🔹 با استفاده از NOT BETWEEN میتوان مقادیر خارج از بازه را فیلتر کرد.
💡 تمرین:
یک کوئری بنویسید که محصولاتی را نمایش دهد که قیمت آنها بین 15 تا 25 باشد اما CategoryID آنها 3 یا 4 نباشد.