فیلتر کردن اطلاعات در SQL
در SQL، میتوانید از دستور WHERE برای فیلتر کردن اطلاعات و نمایش فقط رکوردهایی که با معیارهای شما مطابقت دارند استفاده کنید.
مثال:
فرض کنید جدول زیر را برای ذخیره اطلاعات کارمندان داریم:
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(۲۵۵) NOT NULL,
email VARCHAR(۲۵۵) NOT NULL,
department VARCHAR(۵۰) NOT NULL,
salary DECIMAL(۱۰,۲) NOT NULL,
hire_date DATE NOT NULL
);
۱. نمایش اطلاعات کارمندانی که حقوق آنها بیشتر از ۱۰ میلیون تومان است:
SELECT *
FROM employees
WHERE salary > ۱۰۰۰۰۰۰۰;
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند با حقوق بیشتر از ۱۰ میلیون) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند با حقوق بیشتر از ۱۰ میلیون) | … | … | … | … | … |
| … | … | … | … | … | … |
۲. نمایش نام و ایمیل کارمندانی که در بخش “فروش” کار میکنند:
SELECT name, email
FROM employees
WHERE department = 'فروش';
خروجی:
name | |
---|---|
(نام کارمند اول در بخش فروش) | (ایمیل کارمند اول در بخش فروش) |
(نام کارمند دوم در بخش فروش) | (ایمیل کارمند دوم در بخش فروش) |
… | … |
۳. نمایش اطلاعات کارمندانی که در سال ۱۴۰۲ استخدام شدهاند:
SELECT *
FROM employees
WHERE hire_date BETWEEN '۲۰۲۳-۰۳-۲۱' AND '۲۰۲۴-۰۳-۲۰';
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند استخدام شده در سال ۱۴۰۲) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند استخدام شده در سال ۱۴۰۲) | … | … | … | … | … |
| … | … | … | … | … | … |
۴. نمایش اطلاعات ۵ کارمند با بالاترین حقوق:
SELECT *
FROM employees
ORDER BY salary DESC
LIMIT ۵;
خروجی:
id | name | department | salary | hire_date |
---|
| (ردیف اول – اطلاعات کارمند با بالاترین حقوق) | … | … | … | … | … | |
(ردیف دوم – اطلاعات کارمند با دومین حقوق بالا) | … | … | … | … | … |
| … | … | … | … | … | … | |
(ردیف پنجم – اطلاعات کارمند با پنجمین حقوق بالا) | … | … | … | … | … |
نکات:
- میتوانید از عملگرهای مقایسهای مختلف مانند
=
,>
,<
,>=
,<=
,!=
در شرط WHERE استفاده کنید. - میتوانید از چند شرط در WHERE با استفاده از عملگرهای منطقی
AND
وOR
استفاده کنید. - میتوانید از
ORDER BY
برای مرتبسازی نتایج بر اساس یک یا چند ستون استفاده کنید. - میتوانید از
LIMIT
برای محدود کردن تعداد رکوردهای نمایش داده شده استفاده کنید.