فیلتر کردن اطلاعات در SQL
در SQL، میتوانید از دستور WHERE برای فیلتر کردن اطلاعات و نمایش فقط رکوردهایی که با معیارهای شما مطابقت دارند استفاده کنید.
مثال:
فرض کنید جدول زیر را برای ذخیره اطلاعات کارمندان داریم:
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
department VARCHAR(50) NOT NULL,
salary DECIMAL(10,2) NOT NULL,
hire_date DATE NOT NULL
);
1. نمایش اطلاعات کارمندانی که حقوق آنها بیشتر از 10 میلیون تومان است:
SELECT *
FROM employees
WHERE salary > 10000000;
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند با حقوق بیشتر از 10 میلیون) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند با حقوق بیشتر از 10 میلیون) | … | … | … | … | … |
| … | … | … | … | … | … |
2. نمایش نام و ایمیل کارمندانی که در بخش “فروش” کار میکنند:
SELECT name, email
FROM employees
WHERE department = 'فروش';
خروجی:
name | |
---|---|
(نام کارمند اول در بخش فروش) | (ایمیل کارمند اول در بخش فروش) |
(نام کارمند دوم در بخش فروش) | (ایمیل کارمند دوم در بخش فروش) |
… | … |
3. نمایش اطلاعات کارمندانی که در سال 1402 استخدام شدهاند:
SELECT *
FROM employees
WHERE hire_date BETWEEN '2023-03-21' AND '2024-03-20';
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند استخدام شده در سال 1402) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند استخدام شده در سال 1402) | … | … | … | … | … |
| … | … | … | … | … | … |
4. نمایش اطلاعات 5 کارمند با بالاترین حقوق:
SELECT *
FROM employees
ORDER BY salary DESC
LIMIT 5;
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند با بالاترین حقوق) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند با دومین حقوق بالا) | … | … | … | … | … |
| … | … | … | … | … | … | |
(ردیف پنجم – اطلاعات کارمند با پنجمین حقوق بالا) | … | … | … | … | … |
نکات:
- میتوانید از عملگرهای مقایسهای مختلف مانند
=
,>
,<
,>=
,<=
,!=
در شرط WHERE استفاده کنید. - میتوانید از چند شرط در WHERE با استفاده از عملگرهای منطقی
AND
وOR
استفاده کنید. - میتوانید از
ORDER BY
برای مرتبسازی نتایج بر اساس یک یا چند ستون استفاده کنید. - میتوانید از
LIMIT
برای محدود کردن تعداد رکوردهای نمایش داده شده استفاده کنید.