در SQL، میتوانید از توابع مختلفی در داخل دستورات SELECT برای انجام محاسبات، تبدیل دادهها و دستکاری اطلاعات استفاده کنید. این توابع به شما امکان میدهند اطلاعات را به صورت دلخواه خود بازیابی و نمایش دهید.
انواع توابع در SELECT:
-
توابع جمعآوری:
برای محاسبه مقادیری مانند مجموع، میانگین، حداقل و حداکثر از مجموعهای از دادهها استفاده میشوند. مثال: COUNT(), SUM(), AVG(), MIN(), MAX()
-
توابع رشتهای:
برای دستکاری رشتههای متنی مانند جستجو، جایگزینی، و تبدیل حروف استفاده میشوند. مثال: LEN(), SUBSTRING(), REPLACE(), UPPER(), LOWER()
-
توابع تاریخ و زمان:
برای کار با مقادیر تاریخ و زمان مانند استخراج بخشهای مختلف تاریخ، اضافه کردن یا کم کردن مقادیر زمانی و تبدیل فرمت تاریخ استفاده میشوند. مثال: YEAR(), MONTH(), DAY(), DATEADD(), DATEDIFF()
-
توابع ریاضی:
برای انجام محاسبات ریاضی مانند جمع، تفریق، ضرب و تقسیم و همچنین توابع مثلثاتی و لگاریتمی استفاده میشوند. مثال: ABS(), ROUND(), POWER(), SQRT(), SIN(), COS()
مثال:
فرض کنید جدول زیر را برای ذخیره اطلاعات دانشجویان داریم:
CREATE TABLE students (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(۲۵۵) NOT NULL,
email VARCHAR(۲۵۵) NOT NULL,
gpa DECIMAL(۳,۲)
);
مثال ۱: محاسبه میانگین gpa دانشجویان
SELECT AVG(gpa) AS average_gpa
FROM students;
مثال ۲: پیدا کردن نام کامل دانشجویان
SELECT CONCAT(name, " ", "خانواده") AS full_name
FROM students;
مثال ۳: استخراج نام دانشجویانی که gpa آنها بالاتر از ۳.۵ است
SELECT name
FROM students
WHERE gpa > ۳.۵;
نکات:
- میتوانید از توابع مختلف در یک دستور SELECT استفاده کنید.
- توابع میتوانند به عنوان معیار در شرط WHERE استفاده شوند.
- توابع میتوانند برای مرتبسازی نتایج با استفاده از ORDER BY استفاده شوند.